2011-01-10 53 views
0

我看到了一些擴展用戶用戶信息的方法,並決定採用模型繼承方法。django中的用戶繼承

例如,我有:

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的,登記在用戶表中的新用戶一起創造新的註冊資料。我該如何調整,以便能夠將用戶條目添加到自定義用戶表中。

我試圖創建一個

modelAdmin

,並改變save_model方法來啓動從django_registration的create_inactive_user,不過我沒怎麼從django_registration生成的用戶對象保存到我的父表使用模型繼承時的父表,並且在父模型中沒有外鍵屬性。

+0

是的,你確實有一個隱含的外鍵的用戶Parent,由模型繼承創建,將被稱爲user_ptr – 2011-01-10 22:35:03

回答

2

這可能是這樣的:

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

(Django的做模型繼承時爲您創建外鍵,加上_ptr結束屬性)

+0

是_ptr內置關鍵字? – goh 2011-01-11 09:51:02