One more "django.db.utils.ProgrammingError: relation "device_gclouddevice" does not exist"
One more "django.db.utils.ProgrammingError: relation "device_gclouddevice" does not exist"
我知道有很多 post 有这个问题,但不知何故我找不到解决我的问题的方法。
配置
Django 3.0.0
Python3.6.9
Docker 19.03.5
问题
我有一个 class 像下面这样开始,没什么特别的。
class PubSub:
test = GcloudDevice.objects.count()
我通过命令行使用这个class,如果我评论测试变量,它会完美地工作。
但是如果我 运行 这条线的命令行我得到:
django.db.utils.ProgrammingError: relation "device_gclouddevice" does not exist
LINE 1: SELECT COUNT(*) AS "__count" FROM "device_gclouddevice".
问题是我能够创建 GcloudDevice,我可以从管理区域看到它并对其进行管理。
我已经尝试过的东西
我删除了所有迁移,删除了我的数据库及其卷。
重新创建了一遍,还是一样的问题。
此后我尝试再次从我的设备应用程序中删除迁移并自行迁移它们,还是一样
如果有人能帮助我并向我解释为什么一切都可以在管理员上运行(我可以在 django-debug-toolbar 上看到这个请求正在通过:
SELECT COUNT(*) AS "__count"
FROM "device_gclouddevice
,多么令人沮丧)但不是来自命令行我会很高兴。
所以答案并不难,但我花了一些时间才得到它。 (以及一些帮助)。
事情是我试图通过纯 python 命令行使用 Django ORM。
为了修复它,我正在创建一个 django 命令,我可以将其与“./manage.py MyCommand”一起使用。
这样我就可以使用 django 的选项并通过命令行使用它。
瞧瞧
我知道有很多 post 有这个问题,但不知何故我找不到解决我的问题的方法。
配置
Django 3.0.0
Python3.6.9
Docker 19.03.5
问题
我有一个 class 像下面这样开始,没什么特别的。
class PubSub:
test = GcloudDevice.objects.count()
我通过命令行使用这个class,如果我评论测试变量,它会完美地工作。
但是如果我 运行 这条线的命令行我得到:
django.db.utils.ProgrammingError: relation "device_gclouddevice" does not exist
LINE 1: SELECT COUNT(*) AS "__count" FROM "device_gclouddevice".
问题是我能够创建 GcloudDevice,我可以从管理区域看到它并对其进行管理。
我已经尝试过的东西
我删除了所有迁移,删除了我的数据库及其卷。 重新创建了一遍,还是一样的问题。
此后我尝试再次从我的设备应用程序中删除迁移并自行迁移它们,还是一样
如果有人能帮助我并向我解释为什么一切都可以在管理员上运行(我可以在 django-debug-toolbar 上看到这个请求正在通过:
SELECT COUNT(*) AS "__count"
FROM "device_gclouddevice
,多么令人沮丧)但不是来自命令行我会很高兴。
所以答案并不难,但我花了一些时间才得到它。 (以及一些帮助)。
事情是我试图通过纯 python 命令行使用 Django ORM。
为了修复它,我正在创建一个 django 命令,我可以将其与“./manage.py MyCommand”一起使用。
这样我就可以使用 django 的选项并通过命令行使用它。
瞧瞧