我有一个表单,其中的字段来自ModelForm,其中一个是模型。ForeignKey字段,链接到我的用户模型中的用户名。这将导致数据库中的每个用户都被列在一个选择字段中。我更希望这个字段是一个TextInput,有人可以在其中输入用户名,我已经在ModelForm中做到了这一点。但是,当我的视图通过form.is_valid()时,该表单会给出一个错误,指出该字段无效。如果我删除is_valid()检查,它当然会给我一个错误,即表单无法保存,因为数据没有验证。
如何验证TextInput并将其保存到ForeignKey字段?
覆盖表单清理方法,如下所示https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#overriding-清洁方法
确保clean方法清除文本字段(去掉空白),并查找用户名(或用户id)的值是否正确。