是否需要在模型字段中设置max_length?

时间:2014-10-20 21:11:30

标签: python django database database-design django-models

我正在使用Django应用程序,我想知道是否有任何理由为模型字段明确设置max_length(具体是TextField,但我对所有字段感兴趣)。

是缩小表格大小还是提高效率?较小的max_length是否比较大的max_length有优势?

1 个答案:

答案 0 :(得分:2)

你需要在CharField中设置它,因为它默认为None,我相信。但是在某些情况下,例如电话号码,或ssn,或美国州的缩写,它将引导用户键入一定的正确长度的字符。根据文档:https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.TextField

class TextField([** options]) 一个大的文本字段。此字段的默认表单窗口小部件是Textarea。

在Django 1.7中更改: 如果指定max_length属性,它将反映在自动生成的表单字段的Textarea小部件中。但是,它不会在模型或数据库级别强制执行。使用CharField。