我在Django应用程序中使用多个数据库。 default
数据库是Django为用户身份验证等创建的数据库。然后我有一个vo
数据库,其中包含现有数据,我计划将其用于内容生成。
我希望models.py
中的类能够链接到vo
中的现有表格。但是,当我做的时候
manage.py syncdb --database=vo
创建一组新的空表。顺便说一句,这是一个SQLite3数据库。
如何将数据库中的现有表链接到Django中models.py
上的类?
非常感谢。
答案 0 :(得分:8)
vo
添加到设置中。如果你有这样的数据库设置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(DIR, 'django.sqlite3'),
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
},
}
像这样添加vo
数据库设置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(DIR, 'django.sqlite3'),
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
},
# this your existing db
'vo': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(DIR, 'vo.sqlite'),
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
},
}
然后您可以从数据库自动生成模型。
$ ./manage.py inspectdb --database=vo > your_app/models.py
配置数据库路由器。