gpt4 book ai didi

python - Django RawQuerySet.__repr__ : not enough arguments for format string

转载 作者:行者123 更新时间:2023-12-01 06:03:46 29 4
gpt4 key购买 nike

我在 Django 中使用 RawQuerySet,我需要向它传递一些参数 (5)。我可以使用 MyModel.objects.raw(SQL, params) 调用构造函数。 SQL 很长并且不太相关,但是 params[991L, 991L, 991L, 7L, 3]

我确实得到了一个 RawQuerySet 作为返回。因此,通话正常。

但是,我的问题是,当调用 __repr__ 时(通过此处的 print),我得到一个 “格式字符串参数不足” 错误。现在,我不明白的是:

  1. 既然调用成功了,为什么我没有足够的参数?
  2. [m.start() for m in re.finditer('%s', qs.raw_query)] 给了我 5 个项目,qs.params 也给了我 5 个项目.

我很确定我错过了一些东西,但我似乎找不到什么。

最佳答案

我最终找到了解释。我不确定这对其他人会有多大帮助,但无论如何。

问题来自于 params通话中是 list.看来您可以使用 list实例化 RawQuerySet ,但它不会转换为元组,因此您以后不能将其用于字符串格式化。

结论我将使用MyModel.objects.raw(SQL, tuple(params)) .

关于python - Django RawQuerySet.__repr__ : not enough arguments for format string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9047378/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com