[英]Django CreateView didn't return an HttpResponse object
Can't figure out why CreateView
doesn't return HttpResponse
. 无法弄清楚为什么
CreateView
不返回HttpResponse
。 For now, I use this view just for posting (no GET). 现在,我仅使用此视图进行发布(不获取)。 I thought that set
self.success_url
should be enough (as you can see in def post
). 我认为设置
self.success_url
应该足够了(如def post
)。
class TripCreationView(CreateView):
form_class = TripCreationForm
template_name = 'frontend/homepage.html'
def post(self, request, *args, **kwargs):
self.success_url = request.POST.get('success_url') or reverse('frontend:homepage')
super(TripCreationView, self).post(self, request, *args, **kwargs)
#
# def form_valid(self, form):
# trip = form.save(self.request)
# return HttpResponseRedirect(self.success_url)
def get_form_kwargs(self):
kwargs = super(TripCreationView, self).get_form_kwargs()
kwargs['user'] = self.request.user
return kwargs
Do you know what to do? 你知道该怎么办吗?
You forgot a return statement. 您忘记了退货声明。
def post(self, request, *args, **kwargs):
self.success_url = request.POST.get('success_url') or reverse('frontend:homepage')
return super(TripCreationView, self).post(self, request, *args, **kwargs)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.