我想知道是否可以在Django视图方法中处理不同的POST请求。例如,请使用以下代码:
def my_view(request):
if request.method == "POST":
if request.POST['value_one']:
# Do stuff here
elif request.POST['value_two']:
# Do stuff here
elif request.POST['value_three']:
# Do stuff here
else:
# Do something else
是否可以在Django视图中执行此类操作?如果没有,那么处理这种情况的最佳方法是什么?
答案 0 :(得分:1)
从技术上讲,这不是“处理多个帖子请求”(这是一种废话 - 视图只处理一个请求 - 无论方法一次),但“处理来自后请求的不同值” (或者从GET请求FWIW,它没有太大变化)。
现在回答你的问题:是的,当然有可能 - 正如你会发现你是否自己尝试过 - 而且是一种相当常见的模式。您可能只想使用request.POST.get("whatever", default)
来避免在某些键不是请求正文(POST)或查询字符串(GET)的一部分时处理KeyError
。