【发布时间】:2014-01-16 12:21:36
【问题描述】:
当单击该页面中的按钮时,对同一页面执行 HTTP POST 的“正确”django 方式是什么?
我有一个 django 应用程序,其中包含一个带有两个不同按钮的页面。每个按钮执行不同的操作,但按钮按下的结果以 JSON 格式返回,然后用于更新页面上的 UI。
显然,我可以让每个按钮提交到它自己的视图并这样做。但我也可以让页面视图响应按钮按下并检测请求是否为 POST。
还有 JSON mixin 的东西 - 是否值得尝试以某种方式使用它?
我已经完成了所有工作 - 我只是想知道“正确”的方法是什么。
有什么想法吗?
【问题讨论】:
-
单个 Django 视图函数可以处理多个 Form 对象。我通常只是做一个像
if "form-1-submit-button" in request.POST: form = Form1(request.POST) else form = Form2(request.POST)这样的开关,但我不确定这是否是最佳做法