Django:隐藏表单中的必填字段并从其他字段生成值

bwntbbo3  于 2023-08-08  发布在  Go
关注(0)|答案(1)|浏览(143)

有一个这样的类:

class MyClass():
    foo = CharField('Foo', max_length=42)
    bar = CharField('Bar', max_length=42)
    baz = CharField('Baz', max_length=42)

字符串
字段“foo”和“bar”应该在表单中显示,字段“baz”不应该显示。POST时,字段“baz”应该由“foo”和“bar”生成,例如:

baz = foo + bar


通过使用“HiddenInput”小部件可以防止“baz”字段在表单中显示。好的,我会的
使用CBV:在哪里从“foo”和“bar”生成“baz”内容?在“def post()"中,在“def is_valid()"中,在“def clean()"中?还是别的地方?

k0pti3hp

k0pti3hp1#

您应该重写函数is_valid()并更新其中的baz值。这是因为,您将获得经过验证的值。

def is_valid(self):
     valid = super(YourForm,self).is_valid()
     if valid:
          ##  do your stuff

字符串

相关问题