django - Django 多表继承子类的空查询集
问题描述
我有以下型号:
APP 1:
class User(AbstractBaseUser):
# custom fields etc
# NOT ABSTRACT
APP 2:
class SecondaryUser(User):
# other custom fields
当我这样做时,SecondaryUser.objects.create(...)
我得到了一个预期的实例:
In: SecondaryUser.objects.create(first_name='test', last_name='test', email='test@etest.com')
Out: <SecondaryUser>
这有一个 id 和预期的填充字段。我还可以查询基类并使用 django 生成的 1-1 字段进行继承来访问子类的字段:
User.objects.get(email='test@etest.com').secondaryuser.<some_field>
但是,当我这样做时,SecondaryUser.objects.all()
它会返回一个空的查询集。并且模型管理员SecondaryUser
显示了一个空列表视图(即使我SecondaryUser
在管理员创建视图中创建了一个新实例)。
我觉得我遗漏了一些明显的东西,我需要能够在管理员中列出 SecondaryUser 实例。User
类不能是抽象的。
编辑:已确认他们在数据库中:
mysql> SELECT * from <app2>_secondaryuser;
+-------------+---------------+-----------+
| user_ptr_id | <field_1> | <field_2> |
+-------------+---------------+-----------+
| 123 | 0 | 0 |
| 124 | 0 | 0 |
| 125 | 1 | 0 |
+-------------+---------------+-----------+
解决方案
推荐阅读
- javascript - SyntaxError: Unexpected identifier while Parsin XML Data Using Google App Script
- c++ - MATLAB 到 C++:编码器:不一致的数组维度连接
- java - 如何解决 Activity Not Found 异常
- c# - 在存储过程端读取作为 XmlReader 实例传递的 XML
- r - 使用 >1000 个选项更新服务器端选择输入的选择失败
- lambda - 在普通 lisp 中返回带有函数与宏的 lambda
- python - 将多索引数据帧转换为 json
- html - 访问网站并从服务器下载文件
- python - 为什么我的堆积条形图中缺少条形 - Python w/matplotlib
- jprofiler - JProfiler 代理:将通信套接字绑定到 AIX 平台上的特定网络接口