我有一个表格,根据需要出现几个字段,当我不需要它们时。下面是从models.py形式Django以模型形式需要字段
class CircuitForm(ModelForm):
class Meta:
model = Circuit
exclude = ('lastPaged',)
def __init__(self, *args, **kwargs):
super(CircuitForm, self).__init__(*args, **kwargs)
self.fields['begin'].widget = widgets.AdminSplitDateTime()
self.fields['end'].widget = widgets.AdminSplitDateTime()
在实际电路模型中,字段的定义是这样的:
begin = models.DateTimeField('Start Time', null=True, blank=True)
end = models.DateTimeField('Stop Time', null=True, blank=True)
我给这家views.py在这里:
def addCircuitForm(request):
if request.method == 'POST':
form = CircuitForm(request.POST)
if form.is_valid():
form.save()
return HttpResponseRedirect('/sla/all')
form = CircuitForm()
return render_to_response('sla/add.html', {'form': form})
我能做些什么以便这两个字段不是必需的?
没有办法,这些领域成为通过改变小部件所需。如果模型具有(null = True,blank = True),那么modelForm将它呈现为required = False。 – simplyharsh 2009-07-16 07:42:37
看起来你是对的。字段本身不是必需的,但窗口小部件中的日期和时间字段是必需的。 – Ryan 2009-07-16 21:34:28