有时我有一个逻辑有点复杂的表单,并且需要验证而不仅仅是类型检查或正则表达式,所以我最终直接从 处理数据request.POST['item']
,例如:
datetime.strptime(request.POST['item'], FORMAT)
MyModel.objects.filter(name=request.POST['item2']
据我所知,第一个示例在最坏的情况下会抛出异常,因此没有安全问题,而对于第二个示例,Django ORM 会阻止 SQLi。那是对的吗?
我在 URLConf 中也有正则表达式,所以我想在 views.py 中处理从 URL 获取的数据是安全的,因为 URLConf 已经使用正则表达式对其进行了验证,对吧?