首页 文章

模型中Django Textfield的适用性

提问于
浏览
5

我在模型中有一个字段,我希望用户感觉他们可以编写任意数量的文本.Django在模型中提供了CharField和TextField . 我假设不同之处在于其中一个是char(max_length)而另一个是内部的varchar .

我很想使用TextField,但是因为它不尊重max_length,所以我有点担心有人将大量数据转储到它并对我的服务器进行DOS操作 . 我应该怎么处理这个?

谢谢!

1 回答

  • 7

    模型中的字段仅表示数据在数据库中的存储方式 .

    您可以非常轻松地在表单中强制执行最大长度,以验证用户的输入 . 像这样 .

    class InputForm(forms.Form):
        text = forms.CharField(max_length=16384, widget=forms.TextArea)
        ...
    

    这将确保用户可以成功输入的最大长度为16k .

相关问题