所以我试图站起来查询我的数据库并返回报告的Django站点。我有5个需要导入的旧版DB。我将其设置为默认值并运行inspectdb。这个导入正确,现在已全部设置。我对下一个运行了inspectdb,得到了模型但是当我点击管理面板中的链接时出现错误。我的默认数据库名称是app2,第二个使用的数据库是cucm。有错误说在app2.cucm没有数据库 - 为什么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。我还没有创建任何数据库路由。我希望默认设置能够正常工作
答案 0 :(得分:0)
也许这与你如何调用数据库有关。如果您有多个dbs,则必须明确说明您使用的是哪一个。例如,如果模型是人,您可能会说:
Person.objects.using(dbname)