我们说我创建了一个模型MyModel
实例,其FileField
使用CreateView
并关联了MyModelCreateForm
,现在我想更新它而不上传相同的头像图片:
class MyModel(models.Model):
name = models.CharField()
avatar = models.ImageField()
class MyModelCreateForm(forms.ModeForm):
class Meta:
model = MyModel
exclude = None
class MyModelCreate(CreateView):
model = MyModel
form_class = MyModelCreateForm
class MyModelCreate(UpdateView):
model = MyModel
form_class = ?
在CreateView的表单中,图像是强制性的。如果我想在更新字段中使其成为可选项,那么Django-ish最常用的方法是什么?
我是否需要为继承自MyModelCreateForm
的UpdateView创建一个新表单,但是会覆盖ImageField required
属性?或者是否有更多的电池包含"方式是什么?
答案 0 :(得分:1)
这是一个需要字段的解决方案:
Xunit.Sdk.EqualException: Assert.Equal() Failure
↓ (pos 1)
Expected: x y
Actual: x\\n y
↑ (pos 1)
答案 1 :(得分:0)
我认为不,但你可以在其中实施!
class ModelXForm(ModelForm):
class Meta:
model = x
fields = ['image','name']
def __init__(self,update, survey, **kwargs):
super(FBRequestForm, self).__init__(**kwargs)
if not update:
self.fields['image'].widget.attrs['readonly'] = True
self.fields['image'].widget = forms.HiddenInput()