【问题标题】:failed: django.db.utils.ProgrammingError: relation "users_userprofile" does not exist失败:django.db.utils.ProgrammingError:关系“users_userprofile”不存在
【发布时间】:2016-08-30 15:07:26
【问题描述】:

使用 django 10 和 postgres 9.4。

网站完整设置后,我注意到我无法从我的应用程序创建新对象,默认的 django 应用程序(如用户)都可以。

运行 makemigrations 和 migrate afterwords,当重新尝试时它没有说要迁移。 为了简单起见: 当进入 django shell 并输入

from users.models import *
User.objects.all()
Out[3]: [<User: root>]

但是:

UserProfile.objects.all()
Out[4]:
<repr(<django.db.models.query.QuerySet at 0x39b4610>) failed: django.db.utils.ProgrammingError: relation "users_userprofile" does not exist
LINE 1: ...."is_superuser", "users_userprofile"."wight" FROM "users_use...
                                                             ^

UserProfile 是我的站点用户与 django.contrib.auth 的 onetoone

class UserProfile(models.Model):
    user = models.OneToOneField(User)

谢谢

【问题讨论】:

  • 如果你运行makemigrations &lt;yourappname&gt;会发生什么?
  • 成功了 :) 谢谢,我以为我早点做到了

标签: django postgresql migration


【解决方案1】:

您必须在执行操作之前导入 django.setup:

import django
django.setup()

【讨论】:

  • 断章取意。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-03-17
  • 2021-03-30
  • 1970-01-01
  • 2018-05-11
  • 2014-10-25
  • 2019-03-15
  • 2018-03-23
相关资源
最近更新 更多