2013-07-24 84 views
4

我更新了我的django 1.4應用程序和用戶配置文件以使用1.5自定義用戶模型。切換到Django自定義用戶模型,組和權限

#core/models.py 

from django.contrib.auth.models import User, UserManager, BaseUserManager, AbstractUser 

class MyUserManager(BaseUserManager): 
    pass 

class MyUser(AbstractUser): 
    phone = models.CharField(blank = True, max_length = 18) 
    completed_step = models.IntegerField(default = 0) 
    objects = MyUserManager() 

我爲南方寫了模式遷移,並且所有數據都已成功導入。

否則,我有auth_group和auth_permision的問題。 的Django不能產生任何額外的表,但是當我想要得到的權限或組我有這樣的SQL JOIN與附加表:

SELECT ... 
     FROM "core_myuser" 
     WHERE "core_myuser"."id" = 61 (8ms) Found 1 matching rows 
SELECT ... 
     FROM "core_myuser" 
     WHERE "core_myuser"."id" = 363 (1ms) Found 1 matching rows 
SELECT ... 
     FROM "auth_group" 
     INNER JOIN "core_myuser_groups" ON ("auth_group"."id" = "core_myuser_groups"."group_id") 
     WHERE "core_myuser_groups"."myuser_id" = 363 

隨着內部服務器錯誤

http://cl.ly/image/0W1G3F2S3f3X

回答

0

你尚未在數據庫中創建適當的表。切換用戶模型之前 做桌子:

python manage.py syncdb 
#or if you're use south 
python manage.py schemamigration core --initial 
python manage.py migrate core 

然後編寫自定義遷移腳本爲你的用戶數據,否則你會失去它。

查看this manual和這個documentation,它會幫助你瞭解應該做什麼。

相關問題