如何解决psycopg2.errors.UndefinedTable:关系“ sso_server_consumer”不存在
我正在为基于python的平台实现Django-Simple-SSO。我正在关注此博客以实施SSO:
https://medium.com/@MicroPyramid/django-single-sign-on-sso-to-multiple-applications-64637da015f4
此代码是django-simple-sso服务器端的步骤3。
from simple_sso.sso_server.models import Token,Consumer
Consumer.objects.create(public_key='your_application_public_key',private_key='your_application_private_key',name='your_application_name')
psycopg2.errors.UndefinedTable:关系“ sso_server_consumer”不存在 –这是我在django shell中运行以上代码后立即得到的错误。有人可以帮我解决这个错误吗?
我同时运行了makemigrations
和migrate
命令。但是,仍然出现相同的错误。
我能够在django-admin页面的标题Consumers
下看到SSO_SERVER
表。但是,当我单击该Consumers
表时,出现此错误页面:
ProgrammingError at /admin/sso_server/consumer/
relation "sso_server_consumer" does not exist
LINE 1: SELECT COUNT(*) AS "__count" FROM "sso_server_consumer"
又为什么要导入Token
?由于该sso博客文章中的任何地方都没有使用它。
谢谢
解决方法
我也遇到了同样的情况。我的错误是在集成 postgreSQL 后我没有运行迁移。设置好postgreSQL数据库后,运行这两条命令:
python manage.py makemigrations
python manage.py migrate
对模型进行更改后,您想再次运行这两个命令:
python manage.py makemigrations
python manage.py migrate --run-syncdb
它对我有用,希望它对你有用。
一切都好!!!
,此错误意味着Django-Simple-SSO所需的表在数据库中不存在。
如果您已将打包程序添加到您的环境中并安装了该应用程序,则最有可能是因为您尚未进行迁移并没有应用迁移。请执行以下操作:
python manage.py makemigrations
python manage.py migrate
那么当程序去寻找它们时,这些表将存在。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。