Django中的奇怪问题与表单:
我有一个这样定义的 Form.class ...
class MeetingForm(forms.Form):
owner = forms.ModelChoiceField(
queryset=Profile.objects.all(),
widget=forms.HiddenInput() )
date = forms.DateTimeField()
name = forms.CharField(max_length=30)
etc.
我通过调用这样的函数来创建新实例......
def newMeetingForm(request,profile) :
mf = MeetingForm( {
'date' : date.today(),
} )
return mf
哪个按预期工作。除了,会议的“所有者”字段是空白的。我认为我应该做的是像这样在 newMeetingForm 中预先填写所有者字段:
def newMeetingForm(request,profile) :
mf = MeetingForm( {
'date' : date.today(),
'owner' : profile,
} )
return mf
其中参数“profile”是一个 Profile 对象。
但是,当我运行它时,表单不会呈现。
我在模板中使用它:
{{ form.as_p }}
但是在 newMeetingForm 中添加了额外的“所有者”行,它实际上似乎是一个空字符串。我假设它以某种方式默默地失败了,也许是因为 ModelChoiceField 试图呈现我预先填充的所有者值。但是这些值看起来还可以。那么我还应该寻找什么?