大佬教程收集整理的这篇文章主要介绍了反转 'send_form' 没有找到任何参数。尝试了 1 个模式:[u'app/send_message/(?P<flag>\\d+)/$'],大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试构建一个可在 2 页(索引和联系人)中使用的表单。
一旦表单执行方法post,它会带来一个页面要么成功要么失败(简单的HTML页面,几个字)。
由于上面显示的错误,我被卡住了,我仍然是使用 Django 的新手。
感谢任何帮助。谢谢
urls.py
from django.conf.urls import url
from django.conf.urls import include
from django.contrib import admin
from django.conf import setTings
from django.conf.urls.static import static
urlpatterns = [
url(r'^admin/',admin.site.urls),url(r'^app/',include('app.urls'))
]
app/url.py
from .vIEws import *
app_name = "app"
urlpatterns = [
url(r'^home/$',home,name='home'),url(r'^contact/$',contact,name='contact'),url(r'^send_@R_197_8798@ge/(?P<flag>\d+)/$',send_form,name='send_form'),url(r'^send_@R_197_8798@ge/success/$',success,name='success'),url(r'^send_@R_197_8798@ge/Failed/$',Failed,name='Failed'),]
vIEws.py
from django.core.mail import send_mail
from .forms import @R_197_8798@gesForm
from django.conf import setTings
rom django.shortcuts import render,redirect
def home(request):
empty_form = send_form(request)
cover_title = PageserviceCover.objects.latest('ID').title
cover_text = PageserviceCover.objects.latest('ID').text
context = {'cover_title': cover_title,'cover_text': cover_text,'form':empty_form}
return render(request,'index.HTML',context)
def send_form(request):
if request.method == 'POST':
form = @R_197_8798@gesForm(request.POST)
if form.is_valID():
name = form.cleaned_data['name']
email = form.cleaned_data['email']
phone = form.cleaned_data['phone']
category = form.cleaned_data['category']
text = form.cleaned_data['text']
form.save()
subject=[name,phone,category]
send_mail(subject,text,email,[setTings.EMAIL_HOST_USER],fail_silently=falsE)
return redirect('thanks',flag='success' )
else:
return redirect('not_working',flag='Failed')
def success(request):
return render(request,'thanks.HTML')
def Failed(request):
return render(request,'notworking.HTML')
index.HTML
<form action="{% url 'app:send_form' %}" method="POST" target="_blank">
{%csrf_token%}
{{form.as_p}}
<button type="submit"> Send @R_197_8798@ge </button>
</form>
您的网址需要一个标志
url(r'^send_@R_197_8798@ge/(?P<flag>\d+)/$',send_form,name='send_form'),
更改视图并从模板传递标志
def send_form(request,flag):
if request.method == 'POST':
form = @R_197_8798@gesForm(request.POST)
if form.is_valid():
name = form.cleaned_data['name']
email = form.cleaned_data['email']
phone = form.cleaned_data['phone']
category = form.cleaned_data['category']
text = form.cleaned_data['text']
form.save()
subject=[name,phone,category]
send_mail(subject,text,email,[setTings.EMAIL_HOST_USER],fail_silently=falsE)
return redirect('thanks',flag='success' )
else:
return redirect('not_working',flag='failed')
以上是大佬教程为你收集整理的反转 'send_form' 没有找到任何参数。尝试了 1 个模式:[u'app/send_message/(?P<flag>\\d+)/$']全部内容,希望文章能够帮你解决反转 'send_form' 没有找到任何参数。尝试了 1 个模式:[u'app/send_message/(?P<flag>\\d+)/$']所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。