gpt4 book ai didi

Django扩展对象管理器引发 'NoneType'对象没有属性 '_meta'

转载 作者:行者123 更新时间:2023-12-02 08:17:23 26 4
gpt4 key购买 nike

我正在尝试创建一个自定义对象管理器,如https://docs.djangoproject.com/en/dev/topics/db/managers/#modifying-initial-manager-querysets所述

我正在做这样的事情:

# the model, say Alpha
class MyManager(Manager):
pass
Alpha.objects = MyManager()

我认为不应该做任何事情。但仅仅设置这个就会引发'NoneType'对象没有属性'_meta'。这怎么可能?我想我正在密切关注这个例子。

我检查了覆盖之前的 Alpha.objects 与覆盖之后的 svGroup.objects.__class__.__bases__[0]() 的类型相同(所以它确实是一个子类的实例)。

我有一种感觉,这将是我最愚蠢的问题之一,但我无法弄清楚......

最佳答案

它应该位于模型定义内。因为它是使用模型元类的 __new__ 方法进行处理的。

class Alpha(models.Model):
...
objects = MyManager()

关于Django扩展对象管理器引发 'NoneType'对象没有属性 '_meta',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14032329/

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