我在我的Azure资源组上遇到了一些Django的问题。我的软件的着陆页工作正常,但是当我尝试登录时,它不工作,我得到的错误是由“帐户应用程序”引起的。
Error:
relation "accounts_user" does not exist
LINE 1: ...s_user"."admin", "accounts_user"."timestamp" FROM "accounts_...
字符串
我已经在SSH上执行了迁移,但我认为它们没有被正确迁移,因为即使我“创建一个超级用户”,我刚刚创建的用户也无法登录并抛出相同的错误。
的数据
虽然数据库的变量似乎被正确发送,正如我在本地变量上看到的错误:
ignored_wrapper_args
(False,
{'connection': <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7a01ddf85cc0>,
'cursor': <django.db.backends.postgresql.base.CursorDebugWrapper object at 0x7a01d58667a0>})
params
('USER EMAIL',)
self
<django.db.backends.postgresql.base.CursorDebugWrapper object at 0x7a01d58667a0>
sql
('SELECT "accounts_user"."id", "accounts_user"."password", '
'"accounts_user"."last_login", "accounts_user"."email", '
'"accounts_user"."full_name", "accounts_user"."active", '
'"accounts_user"."staff", "accounts_user"."admin", '
'"accounts_user"."timestamp" FROM "accounts_user" WHERE '
'"accounts_user"."email" = %s LIMIT 21')
型
并且:
DATABASES
{'default': {'ATOMIC_REQUESTS': False,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql',
'HOST': 'MY HOST NAME.postgres.database.azure.com',
'NAME': 'MY DATABASE NAME',
'OPTIONS': {},
'PASSWORD': '********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIGRATE': True,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': 'MY USERNAME'}}
型
有谁知道会发生什么吗?
1条答案
按热度按时间mo49yndu1#
您的Django迁移可能无法在Azure上工作的几个可能原因:
***数据库连接设置不正确:**请确保settings .py文件中的DATABASE设置对于Azure数据库是正确的。您可以在Azure门户中找到正确的连接字符串。
***未应用迁移。**Django迁移必须应用于数据库,以便反映模型的更改,并且
sslmode=require
字符串
python manage.py migrate
命令在我们的数据库中创建了一些默认表。其中包括来自reference的accounts_user
。要访问
account_user
,请参阅此链接:对于上面的参考,django提供了一个内置的身份验证和权限系统,允许您验证用户凭据并定义每个用户可以执行的操作。
User
模型为中心,该模型表示与您的站点交互的人员。has_perm()
方法检查。使用参考,我能够在Django应用程序中使用Azure PostgreSQL进行migrate。
settings .py
个型
x1c 0d1x的数据
的