【发布时间】:2019-09-23 04:44:39
【问题描述】:
Web 开发 Django 和 python 新手。
有一个带有文本框的评论页面,客户在其中写下他们对工厂参观的评论。单击提交时,它以文本文件的形式发送到经理邮件。
我的雇主希望它更像调查页面,因此他们要求将文本框输入更改为基于表单的输入,其中客户提供了多个标签和输入,如下所示。单击提交时,应创建一个包含以下信息的文本文件并作为邮件发送。
Name :
Phone :
email :
precaution and safety gears given: [yes/no]
Unit 1 ambience: [Very satisfied/Satisfied/Neutral/Unsatisfied/Very unsatisfied]
Unit 2 ambience: [Very satisfied/Satisfied/Neutral/Unsatisfied/Very unsatisfied]
Unit 3 ambience: [Very satisfied/Satisfied/Neutral/Unsatisfied/Very unsatisfied]
General feedback : /text box for detailed review if any/
[] 中给出的值是下拉值。
我们的网站建立在 Django 框架上。以下是评论页面使用的模板文件。
{% extends 'page1.tmpl' %}
<form id="reviewform" method="post" action="/sjfacweb/revfile/save">
<pre><textarea name="review" id="review">{{ review }}</textarea></pre>
<input class="button" type="submit" name="submit" value="Save" />
</form>
{% endblock content %}
views.py
@require_POST
@csrf_protect
def revfile_save(request):
"""
This page processes and saves review file.
"""
review = request.POST.get('review', "").replace('\r\n','\n')
reviewfile_name = "/root/sjfacweb/" + remote.sjfacweb()
remote.write_reviewfile(reviewfile_name,False,review)
我认为 django 变量 'review' 捕获了客户输入的整个字符串并将其保存为文件。
假设模板如下所示,
{% extends 'page1.tmpl' %}
<form id="reviewform" method="post" action="/sjfacweb/revfile/save">
Name: <input type="text" name="Name" value=""><br>
Phone: <input type="text" name="Phone" value=""><br>
email: <input type="email" name="email" value=""><br>
precaution and safety gears given:
<select>
<option value="yes">yes</option>
<option value="No">No</option>
</select>
<br>
Unit 1 ambience:
<select>
<option value="Very Satisfied">Very Satisfied</option>
<option value="Satisfied">Satisfied</option>
<option value="neutral">neutral</option>
<option value="Unsatisfied">Unsatisfied</option>
<option value="Very Unsatisfied">Very Unsatisfied</option>
</select>
<pre><textarea name="review" id="review"></textarea></pre>
<input class="button" type="submit" name="submit" value="Save" />
</form>
{% endblock content %}
如何将表单中的所有标签/值转换为单个字符串并分配给django变量{{ review }}?
谢谢,
莫汉
【问题讨论】: