bri*_*dum 8 python django django-models
Django的ForeignRelatedObjectsDescriptor.create_manager(...)
函数动态创建RelatedManager
类,然后初始化动态创建的类的实例.
如果我想覆盖该RelatedManager.add(...)
方法,我该怎么做?
这些RelatedManager
类是在文件中创建的:django/db/models/fields/related.py
.
我想如何使用自定义的示例RelatedManager
是......
class Record(Model):
string = CharField()
class Managed(Model):
record = ForeignKey('Record')
boolean = BooleanField()
def view_function(...):
record = Record(string='Example')
record.save()
record.managed_set.add(Managed(boolean=True)) # How to override add()?
Run Code Online (Sandbox Code Playgroud)
任何建议,将不胜感激.
我不确定您需要覆盖什么 - 默认查询集已经满足您的要求。
但要回答这个问题,您可以在模型上定义一个自定义管理器并进行设置use_for_related_fields=True
以确保它将其用作自动管理器。请参阅有关控制自动管理器类型的文档。
归档时间: |
|
查看次数: |
3729 次 |
最近记录: |