本文介绍了为模型覆盖Django的RelatedManager的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我怎样才能超越经理的关系?例如:
How i can override manager for relations? For example:
user.entry_set # django.db.models.fields.related.RelatedManager
但是我需要我自己的经理。我尝试使用此代码,但这不起作用:
But i need for my own manager. I try this code, but this does not work:
class EntryManager(models.Manager):
use_for_related_fields = True
谢谢。
推荐答案
您的任务需要相当hacky的代码,这些代码很难维护和理解(如果可能的话)。
You task requires rather hacky code which will be very hard to maintain and understand (if it's even possible).
这怎么办?
class EntryManager(models.Manager):
def by_user(self, user):
# do anything you want
# usage
Entry.objects.by_user(user=user)
这篇关于为模型覆盖Django的RelatedManager的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!