如何在raw django中清理SQL输入

时间:2014-03-23 06:05:09

标签: mysql sql django django-models sql-injection

当有人执行搜索时,我会运行以下查询:

search = request.GET.get('search', '')
titles = Title.objects.raw("SELECT * FROM title WHERE MATCH(new_composite_title)
         AGAINST ('" + search + "') LIMIT 10")

如何清除上面的输入以防止SQL注入?

1 个答案:

答案 0 :(得分:0)

不信任用户输入。它充满了sql注入。将extra() QuerySet修饰符与params参数一起使用。查看here获取MySQL的全文搜索示例。