我正在尝试将@property字段插入django模型。 但是,该字段从RawQuerySet像这样获取其值;
<--- Last few GCs --->
504158 ms: Mark-sweep 1379.9 (1434.3) -> 1379.0 (1434.3) MB, 1486.7 / 0.0 ms [allocation failure] [GC in old space requested].
505610 ms: Mark-sweep 1379.0 (1434.3) -> 1379.0 (1434.3) MB, 1452.0 / 0.0 ms [allocation failure] [GC in old space requested].
507067 ms: Mark-sweep 1379.0 (1434.3) -> 1379.0 (1406.3) MB, 1456.1 / 0.0 ms [last resort gc].
508505 ms: Mark-sweep 1379.0 (1406.3) -> 1379.0 (1406.3) MB, 1438.3 / 0.0 ms [last resort gc].
这可以正常工作且没有错误,但是django不会在 str 函数中显示查询集的值,而是仅显示整个查询,就像上面编写的一样。即“ SELECT T3.total_quantity .....”
我想知道是否甚至可以使用@property字段显示另一个不相关的数据库表中的值。
我在StackOverflow上看到了一些示例,其中在self.field_name的帮助下,使用同一模型中的值显示了计算值,但是我找不到任何示例,其中计算值是从另一个模型或原始SQL查询派生的
请帮助。任何提示将不胜感激。谢谢
答案 0 :(得分:0)
好的,进一步阅读后,我刚刚从这篇文章中找到
Django RawQuerySet not working as expected
只有在必要时才对Django中的QuerySet进行评估,也就是说,直到必要时才对数据库进行查询。
通过访问QuerySet API的链接,我找到了一种完全可以实现我想要的方法的方法。
在大多数情况下,您脱口而出问题后很快就会找到答案。哈哈