如何验证视图中的URL参数?这可以使用一堆ìf
语句来完成,还是有更好的方法来实现它?我想在请求进入时验证参数,而不是将它分散在我的视图,模型和管理器中。
当我说验证时,我指的是基本检查,例如存在密钥,检查数据类型,整数范围等。
感谢。
答案 0 :(得分:0)
我认为在这种情况下,它取决于您的应用程序的规模 如果它只是一个通过简单的if语句进行数据验证的小应用程序 将是最简单的路线,但django确实具有支持更好的表单验证(https://docs.djangoproject.com/en/1.3/ref/forms/validation/)的功能,所以它 这样做可能更干净,但它最终归结为if语句。
答案 1 :(得分:0)
您的urls.py
可以使用适当的正则表达式来处理某些验证(例如,使用\d
表示整数值而不是\w
)但是存在密钥或更复杂的东西必须在您的视图代码本身中完成,通常使用if检查。
密钥存在性验证逻辑可以使用django.shortcuts.get_object_or_404或使用基本视图类或装饰器进行简化。