gpt4 book ai didi

django - 如何在 success_url 中传递上下文数据?

转载 作者:行者123 更新时间:2023-12-02 07:10:06 25 4
gpt4 key购买 nike

我制作了一个表单,我希望再次返回相同的表单,这次使用可在我的模板中使用的上下文数据来显示表单已成功发送。

我该怎么做?

class ContactUsView(FormView):
form_class = ContactUsForm
template_name = 'website/pages/contact_us.html'

def form_valid(self, form):
form.send_email()
return super(ContactUsView, self).form_valid(form)

def get_success_url(self):
# Something here?

所以基本上我希望 get_success_url 返回到 ContactUsView ,例如{'success':'true'} 我可以在模板中读取它并呈现一个表示已成功的框。我不想更改为另一个静态页面!

最佳答案

将这样的网址添加到urls.py:

url(r'^contact/(?P<success>\w+)$', ContactUsView.as_view(), name="ContactUsView"),

您可以在基于类的 View 中访问此参数,如下所示:

get_context_data 方法添加到您的class-view

class ContactUsView(DetailView):
context_object_name = 'my_var'

def get_context_data(self, **kwargs):
context = super(ContactUsView, self).get_context_data(**kwargs)
context['success'] = self.success
return context

您可以在模板中使用{{ my_var.success }}

关于django - 如何在 success_url 中传递上下文数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26483026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com