【发布时间】:2014-02-12 05:48:48
【问题描述】:
我知道这个问题太原始了,但我是 Web 应用程序开发的新手,我仍然没有找到答案。当您想从用户那里接收一些数据时,例如用户想在这样的模板中购买的产品数量:
form action="/pay/" method="POST">
{% csrf_token %}
<label for="pid">Book ID</label>
<input type="text" name="pid" value={{pid}} />
<br/>
<label for="sid">Seller ID</label>
<input type="text" name="sid" value={{sid}} />
<br/>
<input type="hidden" name="success_url" value="http://localhost:8000/payment/success" />
<input type="hidden" name="cancel_url" value="http://localhost:8000/payment/cancel" />
<input type="hidden" name="error_url" value="http://localhost:8000/payment/error" />
<p>Checksum test: {{checksum}}</p>
<input type="text" name="checksum" value={{checksum}}/>
</br>
<label for="id_amount">Please enter the number of products you would like to buy </label>
<input type="text" id="id_amount" name="amount" value=""/>
<input type="submit" value="Accept payment" />
</form>
您如何在视图中读取该输入?例如,如何打印该输入?
我的看法是这样的:
def get_payment_detail(request, pid, sid):
checksum = Payment().calc_checksum()
return render_to_response('payment/payment.html', RequestContext(request, {'pid':Payment.pid,
'sid':Payment.sid,
'amount':Payment.amount,
'checksum': checksum
}))
【问题讨论】:
-
您错过了 django 的一项美丽功能。使用表单让您的生活更轻松,您可以忘记向表单添加验证。
-
我实际上是在尝试通过此链接使用它:peachybits.com/2011/09/django-1-3-form-api-modelform-example,但我必须做的事情的顺序有点混乱。我想要做的是有一个向用户显示表单的视图。用户输入一些东西,我得到那个输入并与其他东西一起将它发送到外部服务器。但到目前为止,我完全搞砸了!如果你能帮助我,你会真的很好。
-
我正在使用您发送给我的链接。这是很不错的!但是,如果我想根据从 HTML 中获得的条目计算校验和并将其添加到表单中,我该怎么做呢?
-
我的视图如下所示: def pay(request): if request.method == 'POST': form = PaymentForm(request.POST) if form.is_valid(): checksum = PaymentModel() .calc_checksum() myModel = form.save() myModel.checksum = calc_checksum() else: print form.errors else: # 请求是GET form = PaymentForm() return render_to_response('payment/payment.html', {'form ':form})
标签: python django web-applications django-templates django-views