Request.form 在 pythonanywhere 中
Request.form in pythonanywhere
我想我可能在 Pythonanywhere 上错误地使用了 request.form。我有几个下拉菜单,在 html:
中看起来像下面这样
<span class="text" style="margin-left: 4px;">{{form.q1Text}}</span><br>
<select name="q1a" class="question">
{% for p in form.q1Opts %}
<option value={{p}}>{{p}}</option>
{% endfor %}
</select>
我传入一个表格,看起来像这样:
class questionForm(Form):
q1Text = "This is a question?"
q1Opts = ["Option A","Option B","Option C","Option D"]
提交表单后,我希望能够访问该人选择的选项,因此我执行以下操作:
answer = request.form["q1a"]
在这个特定示例中,我觉得我应该 "Option A" 从表单中返回。问题是我不知道。我回来了 "Option"。无论我输入什么选项都是如此;仅返回第一个单词(用户选择的单词)。我已经解决这个问题一段时间了,但我希望有人真正知道如何解决它并让我找回整个字符串。
哦,我觉得我应该指出选项在网页上显示正确。所以用户看到 "Option A"、"Option B" 等等,但是当我尝试阅读他们的回复时,我只得到第一个词是什么。
您似乎遗漏了 value=
属性周围的引号?
应该是:
<option value="{{p}}">{{p}}</option>
我想我可能在 Pythonanywhere 上错误地使用了 request.form。我有几个下拉菜单,在 html:
中看起来像下面这样<span class="text" style="margin-left: 4px;">{{form.q1Text}}</span><br>
<select name="q1a" class="question">
{% for p in form.q1Opts %}
<option value={{p}}>{{p}}</option>
{% endfor %}
</select>
我传入一个表格,看起来像这样:
class questionForm(Form):
q1Text = "This is a question?"
q1Opts = ["Option A","Option B","Option C","Option D"]
提交表单后,我希望能够访问该人选择的选项,因此我执行以下操作:
answer = request.form["q1a"]
在这个特定示例中,我觉得我应该 "Option A" 从表单中返回。问题是我不知道。我回来了 "Option"。无论我输入什么选项都是如此;仅返回第一个单词(用户选择的单词)。我已经解决这个问题一段时间了,但我希望有人真正知道如何解决它并让我找回整个字符串。
哦,我觉得我应该指出选项在网页上显示正确。所以用户看到 "Option A"、"Option B" 等等,但是当我尝试阅读他们的回复时,我只得到第一个词是什么。
您似乎遗漏了 value=
属性周围的引号?
应该是:
<option value="{{p}}">{{p}}</option>