我的模型有超过25个字段。我想创建一个表单来只编辑其中一个字段。因此我这样做了:
class My_Model_Form(ModelForm):
class Meta:
model = myModel
fields = ('myField')
这给了我关于Unknown field(s) (i, b, l, o, T) specified for My_Model_Form
的错误。所以,我把上面改为:
class My_Model_Form(ModelForm):
class Meta:
model = myModel
field = ('myField')
(我从fields
删除了 s )。这有效(如在runserver
命令中运行)但是,该表单现在包含模型myModel
中的所有字段。我可以获得所需的单字段表单的唯一方法是使用exclude
关键字,并列出除我想要的所有字段。这看起来很荒谬。
我是不是错了。有没有更好/更正确的方法呢?
谢谢!
答案 0 :(得分:10)
您必须在单项元组中使用逗号,否则当您遍历fields
时,它将迭代字符串中的每个字符:
fields = ('myField',)