我有一個表格,根據需要出現幾個字段,當我不需要它們時。下面是從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