修改设置文件中的 INSTALLED_APPS
INSTALLED_APPS = [
#...
'myapp',
#...
]
CharField
(以及它的子类)需要接收一个 max_length
参数,用以指定数据库存储 VARCHAR
数据时用的字节数
如果设置为 True
,当该字段为空时,Django 会将数据库中该字段设置为 NULL
。默认为 False
</dd>
blank
如果设置为 True
,该字段允许为空。默认为 False
。
注意该选项与 False
不同, null
选项仅仅是数据库层面的设置,然而 blank
是涉及表单验证方面。如果一个字段设置为 blank=True
,在进行表单验证时,接收的数据该字段值允许为空,而设置为 blank=False
时,不允许为空。
choices
一系列二元组,用作此字段的选项。如果提供了二元组,默认表单小部件是一个选择框,而不是标准文本字段,并将限制给出的选项
每个二元组的第一个值会储存在数据库中,而第二个值将只会用于在表单中显示。
from django.db import models
class Person(models.Model):
SHIRT_SIZES = (
('S', 'Small'),
('M', 'Medium'),
('L', 'Large'),
)
name = models.CharField(max_length=60)
shirt_size = models.CharField(max_length=1, choices=SHIRT_SIZES)
关联
多对一
定义多对一关系,请使用django.db.models.ForeignKey
如果一个Car模型有一个Manufacturer–即 Manufacturer制造多个汽车,但每个Car只有一个 Manufacturer–使用以下定义:
from django.db import models
class Manufacturer(models.Model):
# ...
pass
class Car(models.Model):
manufacturer = models.ForeignKey(Manufacturer, on_delete=models.CASCADE)
多对多
一对一