4

我用用户配置文件更新了我的 django 1.4 应用程序以使用 1.5 自定义用户模型。

#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 不能生成任何额外的表,但是当我想获得权限或组时,我有这个带有 JOIN 的 SQL 到额外的表:

 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

4

1 回答 1

0

您尚未在数据库中创建适当的表。在切换用户模型之前制作表格:

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

然后为您的用户数据编写自定义迁移脚本,否则您将丢失它。

查看本手册和本文档,它将帮助您了解应该做什么。

于 2014-07-21T10:08:41.223 回答