【发布时间】:2020-01-17 08:11:28
【问题描述】:
models.py
从 django.db 导入模型
类抱怨(models.Model):
name = models.CharField('Name', max_length=120)
Email = models.CharField(max_length=120)
message = models.CharField(max_length = 600)
def __str__(self):
return self.name
views.py
def contact(request):
if request.method == 'GET':
form = ComplainForm()
else:
form = ComplainForm(request.POST)
if form.is_valid():
name = form.cleaned_data['name']
email = form.cleaned_data['Email']
message = form.cleaned_data['message']
try:
send_mail(name, message, email, ['ankushbanik123@gmail.com']) # change this to your email
except BadHeaderError:
return HttpResponse('Invalid header found.')
return redirect('/success')
return render(request, "tem/home.html", {'form': form})
"""你需要一个表单提交成功的视图。这将在用户提交表单后呈现感谢消息。然后在 urls.py 上,导入成功视图,然后添加 path('success' , 成功视图, name='成功'),""" def 成功视图(请求): 返回渲染(请求,“tem/success.html”)
form.py
class ComplainForm(forms.ModelForm):
class Meta:
model = complain
fields = ['name', 'Email', 'message',]
def clean_email(self):
email = self.cleaned_data.get('email')
return email
admin.py
from django.contrib import admin
在此处注册您的模型。
from .models import complain
admin.site.register(投诉)
class complainAdmin(admin.ModelAdmin):
list_display = ('name', 'Email', 'message')
admin.site.register(complain, complainAdmin)
【问题讨论】:
标签: django python-3.x django-models