0

要么我没有得到足够的睡眠,要么我错过了一些明显的东西。

无论我做什么,在 HttpResponseRedirect 之后,我都无法从基于类的视图中显示消息。

这是我的看法:

class Add(SuccessMessageMixin, LoginRequiredMixin, CreateView):
    template_name = "apps/add.html"
    form_class = forms.Add
    success_message = "Report was added successfully"

    def form_valid(self, form):
        team = get_object_or_404(t_models.Team, owner=self.request.user)
        self.object = form.save(commit=False)
        self.object.team = team
        self.object.recorded_by = self.request.user
        self.object.save()
        form.save_m2m()
        return HttpResponseRedirect(self.get_success_url())

    def get_success_url(self):
        return reverse('thing_detail', kwargs={'pk': self.object.id})

到目前为止,我已经仔细检查了所有会话设置是否正确,所有消息都设置正确,并且我已经重新启动了 VE 并刷新了缓存。

有什么建议么?

4

1 回答 1

0

尝试将您的 mixin 重新排序为Add(LoginRequiredMixin, SuccessMessageMixin, CreateView):

于 2017-05-11T05:13:48.507 回答