Python django联系人表单如何在没有新url的情况下在任何模板中使用该表单?
我已经安装了Python django联系人表单如何在没有新url的情况下在任何模板中使用该表单?,python,django,django-forms,Python,Django,Django Forms,我已经安装了django联系人表单,表单的默认url是'contact/'。但是,我已经有了自己的联系页面,我们称之为'contact\u us/',我希望在'contact\u us/'中包含表单,使用url和我已有的'contact\u us/'视图 通常的方法是使用{%extends'contact\u us%%},但是如果我这样做,并删除我原来的'contact\u us/'url,它会给我一个反向错误 我认为可能的方式是将ContactFormView(来自django contact
django联系人表单
,表单的默认url
是'contact/'
。但是,我已经有了自己的联系页面,我们称之为'contact\u us/'
,我希望在'contact\u us/'
中包含表单,使用url
和我已有的'contact\u us/'视图
通常的方法是使用{%extends'contact\u us%%}
,但是如果我这样做,并删除我原来的'contact\u us/'
url,它会给我一个反向错误
我认为可能的方式是将ContactFormView
(来自django contact form
)作为上下文发送到“contact_us/”
,但我认为这是不可能的,因为每个视图都有自己的url
我想知道一种方法,能够把任何模板内的形式很容易。可能有一种简单的方法可以做到这一点,我不知道。您可以通过以下方式从联系我们中调用ContactFormView
:
1.通过重写url
url.py
from contact_form.views import ContactFormView
from django.views.generic import TemplateView
urlpatterns = [
# ... other URL patterns for your site ...
url(r'^contact_us/$',
ContactFormView.as_view(),
name='contact_form'),
url(r'^contact_us/sent/$',
TemplateView.as_view(template_name='contact_form/contact_form_sent.html'),
name='contact_form_sent'),
]
from contact_form.views import ContactFormView
class CustomContactFormView(ContactFormView):
# Customize any function that you want to
template_name = 'custom_template.html'
from views import CustomContactFormView
urlpatterns = [
# ... other URL patterns for your site ...
url(r'^contact_us/$',
CustomContactFormView.as_view(),
name='contact_form'),
]
二,。如果要自定义此视图
在视图中.py
from contact_form.views import ContactFormView
from django.views.generic import TemplateView
urlpatterns = [
# ... other URL patterns for your site ...
url(r'^contact_us/$',
ContactFormView.as_view(),
name='contact_form'),
url(r'^contact_us/sent/$',
TemplateView.as_view(template_name='contact_form/contact_form_sent.html'),
name='contact_form_sent'),
]
from contact_form.views import ContactFormView
class CustomContactFormView(ContactFormView):
# Customize any function that you want to
template_name = 'custom_template.html'
from views import CustomContactFormView
urlpatterns = [
# ... other URL patterns for your site ...
url(r'^contact_us/$',
CustomContactFormView.as_view(),
name='contact_form'),
]
url.py
from contact_form.views import ContactFormView
from django.views.generic import TemplateView
urlpatterns = [
# ... other URL patterns for your site ...
url(r'^contact_us/$',
ContactFormView.as_view(),
name='contact_form'),
url(r'^contact_us/sent/$',
TemplateView.as_view(template_name='contact_form/contact_form_sent.html'),
name='contact_form_sent'),
]
from contact_form.views import ContactFormView
class CustomContactFormView(ContactFormView):
# Customize any function that you want to
template_name = 'custom_template.html'
from views import CustomContactFormView
urlpatterns = [
# ... other URL patterns for your site ...
url(r'^contact_us/$',
CustomContactFormView.as_view(),
name='contact_form'),
]