标签:arch 随机排序 djang lan prim load blank har unique
from django.db import models class Person(models.Model): first_name = models.CharField(max_length=30) last_name = models.CharField(max_length=30)
上面的Person
模型会在数据库中创建这样一张表:
CREATE TABLE myapp_person ( "id" serial NOT NULL PRIMARY KEY, "first_name" varchar(30) NOT NULL, "last_name" varchar(30) NOT NULL );
myapp_person
,是根据 模型中的元数据自动生成的,也可以覆写为别的名称,详见Table names。id
字段是自动添加的,但这个行为可以被重写。详见自增主键字段。CREATE TABLE
SQL 语句使用PostgreSQL 语法格式,要注意的是Django 会根据设置文件 中指定的数据库类型来使用相应的SQL 语句。定义好django模型后,需要在settings.py中INSTALLED_APP添加应用
models语法:
属性=models.字段类型(字段选项)
1.BooleanField() True 0,False 1
2.CharField() max_length 字符串长度
3.DateField() date类型
4.DateTimeField() datetime类型
5.DecimalField() decimal类型 eg:money=models.DecimalField(max_digits=7,decimal_places=2)整体7位,小数点后2位,整数5位
6.FloatField() float类型
7.InterField() int类型
8.EmailField() varvhar类型
9.URLField() varchar类型
10.TextField() text类型
11.ImageField() 保存图片入数据库 image=models.ImageField(upload_to="static/images/")
12.AutoField(primary_key=True) 自增
1.primary_key 为True时主键,如没有指定,django自动添加
2.unique 为True时唯一
3.default 指定默认值
4.null 为True时允许为空,默认为False
5.db_index 为True时该列增加索引
6.db_column 属性映射到表的列名
7.blank 为True,允许不填,默认为False
8.choices 字段选择项(enum) choices=二元元祖
class Meta:
元选项=""
abstract=True 该模型为抽象基类
app_label="" 如果该模型定义在models以外,告诉django,该模型属于哪个应用
db_table="" 该模型对应数据表的名称(默认的数据表名是 应用名_模型名)
ording=[‘-order_date‘] 为一个字符串的列表或者元组,每个字符串是一个字段名,前面带有‘-’表示倒序排列,没有‘-’表示正序排列,使用‘?’表示随机排序
ording=[‘-pud_date‘,‘author‘] >> 表示按pub_date倒序排序,按author正序排序
verbose_name="" 对象的别名,如果没有设置,django会把类名拆开作为自述名,如CamelCase变为camel case
verbose_name_plural verbose_name的复数
标签:arch 随机排序 djang lan prim load blank har unique
原文地址:https://www.cnblogs.com/pfeiliu/p/11930064.html