Django超级用户夹具错误 - 没有这样的表:auth_user

时间:2015-04-23 01:23:55

标签: python django django-authentication django-syncdb django-fixtures

我想在Django' syncdb中(在执行完成后)为超级用户创建定义一个固定的用户名和密码。我在下面使用的方法是在旧版本的Django中工作(我猜1.6),但现在它没有用。

我有这个夹具文件initial_data.json

[
{
  "fields": {
    "username": "me",
    "first_name": "",
    "last_name": "",
    "is_active": true,
    "is_superuser": true,
    "is_staff": true,
    "last_login": null,
    "groups": [],
    "user_permissions": [],
    "password": "pbkdf2_sha256$...",
    "email": "a@a.co",
    "date_joined": "2015-04-23T01:13:43.233Z"
  },
  "model": "auth.user",
  "pk": 1
}
]

我在settings.INSTALLED_APPS中添加此内容:

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'my_app',

)

并运行python manage.py syncdb,我收到以下错误:

django.db.utils.OperationalError: Problem installing fixture 'path/initial_data.json': Could not load auth.User(pk=1): no such table: auth_user

我该怎么办?

我可以更改灯具加载的顺序,以确保在加载此灯具之前创建auth_user表吗?

或者在Django中自动创建超级用户的任何其他方式?

提前致谢。

0 个答案:

没有答案