2011-01-11 106 views
0

我有這個用戶等級:的Django無法將用戶添加到

class Parent(User): 
    contact_means = models.IntegerField() 
    is_active = False 
    is_staff = False 
    is_superuser = False 
    #parent_id = models.AutoField() 
    class Meta: 
     db_table = 'parent' 

在我的管理頁面增加家長的,我想自動添加該父到一個用戶組:

class ParentAdmin(admin.ModelAdmin): 
    def save_model(self,request,modelObj,modelFormIns, change): 
     if not change: #new entry 
      #save regular parent and user 
      parentGroup = Group.objects.get(pk=1) 

      modelObj.save() 
      modelObj.groups.add(parentGroup) 
      #parentGroup.save() 
      #save a record under django-registration 
      profile_callback = None 
      RegistrationProfile.objects.create_inactive_user_from_fk(user = modelObj,send_email = True) 

     else: 
      modelObj.save() 

這不行!沒有用戶被添加到組中。爲什麼?

+1

與False比較時不要使用'is`。 `is`用於比較身份,而不是價值。只要「如果不改變」 - 或者,如果你必須的話,「如果改變== False」。 – 2011-01-11 16:32:37

回答

0

我想它可能會導致問題的組字段。在我的modeladmin中添加exclude = ['groups'],我沒有任何問題。可能這可能是因爲在我的代碼中以編程方式添加組之後,用戶組在之後被刷新,因爲在表單本身沒有選擇組。