我试图在页面之间传递一些数据,但它不起作用。有小费吗?我点击提交,它将我带到一个空白页面。如果我刷新然后显示我的基本模板样式,但没有数据传递。
的index.html
{% extends "polls/base.html" %}
{% block title %}Vote{% endblock %}
{% block content %}
<h1>Welcome</h1>
<form action="/polls/" method="post">{% csrf_token %}
<p><label for="pin">Enter group pin:</label>
<input id="pin" type="text" name="pin" maxlength="4" />
<input type="submit" value="View Polls" /></p>
</form>
<a href="admin/">Moderator login</a>
</p>
{% endblock %}
轮询/ index.html中
{% extends "polls/base.html" %}
{% block title %}Recent Polls{% endblock %}
{% block content %}
{{ pin }}
{% endblock %}
轮询/ urls.py
url(r'^$',
ListView.as_view(
model=Poll,
template_name='polls/index.html')),
答案 0 :(得分:0)
您需要编写一个视图来处理表单子目录。有效的视图列出了您的所有民意调查。我建议你阅读教程:
基本观点:https://docs.djangoproject.com/en/1.4/intro/tutorial03/ 表格提交:https://docs.djangoproject.com/en/1.4/intro/tutorial04/
基本上,您的表单会将数据发送到另一个处理数据处理的网址。
您必须在action
属性中指定它:
<form action="/polls/create-poll" method="post">{% csrf_token %}
<input type='text' name='poll-name' />
<input type='submit' />
</form>
并在您的观点中:
def create_poll(request):
poll_name = request.POST.get('poll-name')
poll = Poll.objects.create(name=poll_name)
return HttpResponse("Poll created")
我不想听起来很粗鲁。但是你应该从一些HTTP和HTML教程开始。一个优秀的网络程序员是能够详细了解基本内容的人。 HTTP是一个很好的协议,尝试一直学习它。