【发布时间】:2011-05-03 03:55:29
【问题描述】:
我正在尝试集成第 3 方 Django 应用程序,该应用程序不幸决定从 django.contrib.auth.models.User 继承,这对于可插拔应用程序来说是一个很大的禁忌。引用Malcolm Tredinnick:
不过,更重要的是,就像在 Python 中一样,您不能“沮丧”地使用 Django 的模型继承。也就是说,如果您已经创建了用户 例如,你不能不偷偷摸摸地做那个 instance 对应于您尚未创建的子类实例。
嗯,我需要将此第 3 方应用程序与我现有的用户实例集成。所以,如果假设我确实愿意在被窝里闲逛,我有什么选择?我知道这不起作用:
extended_user = ExtendedUser(user_ptr_id=auth_user.pk)
extended_user.save()
也不例外,但它破坏了各种东西,首先用空字符串覆盖django.contrib.auth.models.User 中的所有列...
【问题讨论】:
标签: python django inheritance