来自annotate()
上的django docs:
使用提供的查询列表注释QuerySet中的每个对象 表达式。表达式可以是简单值,是对a的引用 模型上的字段(或任何相关模型),或......
是否可以为模型注释方法的结果?
我试过这样:
my_queryset.annotate(ann=my_method(request.user))
和
my_queryset.annotate(my_method(request.user))
但我收到my_method
未定义的错误。该方法存在且工作正常:object.my_method(request.user)
我认为有一个装饰器将方法视为一个字段,但我似乎无法找到任何信息(它可能是基于django模板的方法调用,所以可能没有关联)
this question中提供了替代解决方案。但我想知道annotate
方法结果是否可行。