所以我是 django 的新手,我正在为基于类的视图的文档而苦苦挣扎。不太确定我在这里做错了什么,但这就是问题所在:
我在表单上填写适当的数据,单击提交,然后我被重定向到相同的 url 以及一些get
与我在表单中提交的内容相对应的参数。数据库中没有添加任何新内容。单击提交时,我想在数据库中创建一个新Advertisement
行。
我有一个 ModelForm 如下:
class NewAdForm(ModelForm):
class Meta:
model = Advertisement
exclude = ('campaign',)
def __init__(self, campaign, *args, **kwargs):
super(NewAdForm, self).__init__(*args, **kwargs)
self.campaign = campaign
我也有一个 FormView:
class AddAdvertView(FormView):
form_class = NewAdForm
template_name = 'advertisers/newad.html'
def get_form_kwargs(self):this
kwargs = super(AddAdvertView, self).get_form_kwargs()
kwargs['campaign'] = get_object_or_404(Campaign, id__exact = self.kwargs['campaign_id'])
return kwargs
def form_valid(self, form):
form.save(commit = True)
return super(AddAdvertView, self).form_valid(form)
这是模板:
<form action="" method="get">
{{ form.as_p }}
<input type="submit" value="Submit"/>
</form>