0

我看到了几种扩展用户的用户信息的方法,并决定采用模型继承的方法。

例如,我有:

class Parent(User):
    contact_means = models.IntegerField()
    is_staff = False 
    objects = userManager()

现在完成了,我下载了 django_registration 来帮助我向新用户发送电子邮件。问题是,我想调用 django_registration 的电子邮件发送/激活功能,而不是使用注册表单来注册新用户。所以我的工作流程是:

1. add new Parent object in admin page.
2. send email

我的问题是,django-registration 在用户表中创建了一个新的注册配置文件和一个新用户。我如何调整它以便能够将用户条目添加到自定义用户表中。

我试图创建一个

modelAdmin

并更改 save_model 方法以从 django_registration 启动 create_inactive_user,但是当我使用模型继承并且我的父模型中没有外键属性时,我不知道如何将从 django_registration 生成的用户对象保存到我的父表中。

4

1 回答 1

2

它可能是这样的:

p = Parent()
p.user_ptr = user
p.contact_means = ...
p.save()

(Django在做模型继承时会为你创建外键,加上以_ptr结尾的属性)

于 2011-01-10T22:36:53.833 回答