当前位置: 代码迷 >> python >> Django request.POST 从输入中获取数据
  详细解决方案

Django request.POST 从输入中获取数据

热度:99   发布时间:2023-07-16 11:04:36.0

在 HTML 中

<form method='post'>
{% csrf_token %}
{{form.name}}
{{form.email}}
<textarea name='message'>{{form.message}}</textarea>
<button type='submit'>Send</button>
</form>

如何从视图中的文本区域获取消息数据? 或者正确的方法是将 {{form.as_p}} 放入表单中? 请帮忙

如果你想看到这个,上面的答案是完全可以的。 另一个安全的方法是request.POST.get('message')如果可用,它将返回None而不是错误消息。

但是,您希望在模板上使用它,然后您可以使用

{{ form.data.message }}

request.POST基本上是一个返回的字典。 它包含csrfmiddlewaretoken和名称指定为request.POST字典中的键的所有表单数据。

因此,根据您的表单,您可以通过简单地编写从 textarea 获取消息数据

message_data = request.POST['message']

view.py

如果您想以您的风格显示表单,请手动进行。 否则,django 提供的渲染表单的技术很少,它们如下:

{{ form.as_table }}将表单呈现为包裹在<tr>标签中的表格单元格,

{{ form.as_p }}将呈现包裹在<p>标签中的表单,

{{ form.as_ul }}将呈现包裹在<li>标签中的表单。

现在,这取决于您希望表单在页面上的外观。

  相关解决方案