我正在尝试使用 2个文本字段, 1个按钮和 3个标签创建一个非常简单的网页,使其看起来像这样:
First Name: [..........] <-- label + textfield
Last Name: [...........] <-- label + textfield
(Submit) <-- button
{Your full name is %FirstName% + %LastName% } <-- label
正如您所看到的,这是一项非常简单的任务。我可以在5分钟内轻松地在ASP.NET中完成此操作,但我对Django或Python不是很熟悉,因为我刚开始学习框架。
感谢。
答案 0 :(得分:2)
zomboid的评论是正确的。看起来您需要了解有关Django的更多信息。您可能想看看The Django Book中的this chapter。该文本有点过时,但基本原理是相同的。
一些一般性指导:您需要将URL(例如/namegrabber
)指向视图功能。在该视图功能中,您可以决定用户是在进行GET还是POST。如果是GET,则实例化未绑定的表单 - 即没有数据的表单 - 并将其传递给要呈现的模板。如果是POST,则实例化表单,并使用request.POST
填充表单。然后,获取表单的cleaned_data
属性中的数据,并将 传递给要呈现的模板。
另外两条评论。首先,正如我所提到的,The Django Book中的文字有点过时了。特别是,您需要以某种方式处理Django的CSRF保护,因为您的视图将处理POST请求,假设您使用的是Django 1.2+。如何做到这一点的一个很好的概述是here。其次,当您构建表单时,您可能希望使用forms.CharField
来处理您正在讨论的数据。
答案 1 :(得分:1)
在python末尾,您可以通过查看request.POST [“field_name”]来查看这些值。然后,您可以将这些值传递给模板(不同的方法取决于您用来调用模板的函数)。然后模板看起来像
Your full name is {{ first_name }} {{ last_name }}
如果您需要更多细节/示例,请与我们联系。