使用Model
当定义了Model之后,你需要告诉Django去使用这些models,
修改settings.py中的INSTALLED_APPS属性,增加包含models.py的模块名称即可。
比如你的models.py文件的路径是 mysite.myapp.models.py,那么
INSTALLED_APPS = (字段选项
每一个字段都有一些参数,比如CharField字段有一个max-length的参数,表示字段类型的长度。
Django定义了一些所有字段(类)都有的公共的参数,下面简单的总结一下他们的使用:
null :如果是True,Django会在数据库中将此字段的值置为NULL,默认值是False
blank :如果是True,那么这个字段是可以不填的。默认是False
blank和null的区别:null纯粹是与数据库有关系的。而blank是与页面必填项验证有关的。如果blank=False,那么这个字段就是必填的。
choices
An iterable (e.g., a list or tuple) of 2-tuples to use as choices for this field. If this is given, Django's admin will use a select box instead of the standard text field and will limit choices to the choices given.
一个二维的元组被用作choices,如果这样定义,Django会select box代替普通的文本框,
并且限定choices的值是元组中的值
id = models.AutoField(primary_key=True)这是一个自增长的主键你可以在任何一个字段上设置primary_key=True,如果Django发现你定义了这个属性,他就不会自动添加id字段了
verbose name 就是Person's first name
first_name = models.CharField("Person's first name", max_length=30) verbose name是 first name
first_name = models.CharField(max_length=30)
Relationships Django定一个三种通用的类型,去描述数据库表之间的关系:many-to-one, many-to-many and one-to-one.
Many-to-one relationships: 使用ForeignKey来定一个Many-to-one的关联关系。就像使用普通的Field一样。
ForeignKey的第一个参数必须定义这个model与哪一个model关联
比如,Car model有一个Manufacturer:一个制造厂(one)可以生产很多汽车(Many),但是一个汽车只能有一个制造厂
联系客服