【发布时间】:2018-02-13 23:08:39
【问题描述】:
当我尝试传递表单时,只会弹出我的提交按钮。 我什至尝试从 Django 网站复制代码......仍然对我不起作用。
这是我的forms.py
from django import forms
class contactForm(forms.Form):
name = forms.CharField(required=False, max_length=100, help_text='100 max.')
email = forms.EmailField(required=True)
comment = forms.CharField(required=True, widget=forms.Textarea)
这是我的观点.py
from django.http import HttpResponse, HttpResponseRedirect
from django.shortcuts import render
from .forms import contactForm
def contact(request):
form = contactForm(request.POST or None)
if form.is_valid():
print(request.POST)
context = locals()
return render(request, 'contact/contact.html', context)
def index(request):
return render(request, 'contact/contact.html')
这是我的contact.html
{% extends "contact/base.html" %}
{% block content %}
<h1>Contact</h1>
<form method='POST' acion=''> {% csrf_token %}
{{ form.as_p }}
<input type='submit' value='submit form'/>
</form>
{% endblock %}
我真的不知道这段代码有什么问题...请帮助!谢谢 ps:我是python新手,也许我需要另一个版本?
【问题讨论】:
-
将
context = locals()更改为context = {"form":form,},它应该可以工作:)
标签: python django django-forms django-templates django-views