所以我正在尝试建立一个Django站点,它将查询我的数据库并返回报告。我有 5 个需要导入的旧数据库。我将一个设置为默认值并运行了检查数据库。这个正确导入,现在一切就绪。我针对下一个运行了 inspectdb,得到了模型,但是当我单击管理面板中的链接时,我收到错误。我的默认数据库名称是 app2,而第二个 db im 正在使用的是 cucm。有错误说app2.cucm上没有db - 为什么django试图转到app2.cucm而不是像它应该的那样去cucm????? settings.py 文件
DATABASES = {
'cucm': {
'NAME': 'CUCM'
'ENGINE': 'django.db.backends.mysql',
'USER': 'user'
'PASSWORD': 'PASSWORD'
'HOST': 'IPADDRESS'
'PORT': '111111'
},
'default': {
'NAME': 'app2',
'ENGINE': 'django.db.backends.mysql',
'USER': 'user',
'PASSWORD': 'PASSWORD',
'HOST': 'IPADDRESS',
'PORT': '1111',
},
}
完整错误如下所示:
路径名 '/root/IPNV/django-test/src/reports/models.py' 在 0x7fbe145cef50> dir=False 时观看> 可能已经改变并且 无法更新,因此无法再信任它。要解决此问题 错误仅在监视的父目录之间移动目录/文件, 在这种情况下,例如在"/root/IPNV/django-test/src/reports"上放置一个手表
我知道上面的语法并不完美,我很快重新输入了它。值得注意的是,所有数据库都在同一主机上。因此,除了名称外,每个数据库的所有字段都是相同的
这是来自 Django 管理面板的错误: 异常值:
(1146,"表'app2。CDR'不存在")
我认为问题出在路由上。"CDR"是 cucm db 中的表,而不是 app2。我还没有创建任何数据库路由。我希望默认值会起作用
也许这与你如何调用数据库有关。如果您有多个数据库,则必须明确说明您正在使用哪一个。例如,如果模型是人,您可能会说:
Person.objects.using(dbname)