我在django应用程序(pgsql 9.6后端)中执行rawsql,如下所示:
obj=AddModel.objects.raw("""
SELECT * FROM "codeaddmodel" \
WHERE ("codeaddmodel"."data" -> 'CodeData') \
@> '[{"street": "New Street" }]'
""")
而且效果很好。在
现在,我按照django doc执行以下操作,并使用params:
^{pr2}$这就产生了一个错误:
^{3}$我已经试了大约两个小时了,但谷歌已经让我失败了!在
您试图在文本中使用占位符:
结果是一个文本,后面是关键字},以及另一个文本。请注意,这将如何为SQL注入打开空间:
^{pr2}$New
和{所以不要手动引用占位符。相反,您应该用占位符替换整个值,并传递一个合适的值,在本例中是一个JSON字符串:
或者如果使用psycopg2和Django的raw只是传递值,^{}
相关问题 更多 >
编程相关推荐