代码:
# it's an ajax request, so parameters are passed via GET method
def my_view(request):
my_param = request.GET['param'] // should I check for KeyError exception?
在PHP框架中,我通常必须检查参数是否存在,如果不存在,则将用户重定向到某个地方。但在Django中,未存在的参数会导致500个错误页,并且看起来是期望的行为。那么,现在就留下代码是可以的,还是有更好的实践呢?我应该始终使用像/myaction/paramvalue/而不是/myaction这样传递的标准参数吗?param_name=param_value(为ajax请求构建这样的url有点困难)?
如果param不存在,那么传递默认值如何?
您的服务器不应该产生500个错误页。
您可以使用以下方法来避免错误:
或:
是的,在这种情况下,您应该检查
KeyError
。或者你可以这样做:相关问题 更多 >
编程相关推荐