gpt4 book ai didi

python - 在 Django 中使用现有数据库

转载 作者:太空狗 更新时间:2023-10-30 00:44:44 25 4
gpt4 key购买 nike

我在 Django 应用程序中使用多个数据库。 default 数据库是 Django 为用户身份验证等创建的数据库。然后我有一个包含现有数据的 vo 数据库,我计划将其用于内容生成。

我希望 models.py 中的类链接到 vo 中的现有表。然而,当我这样做的时候

manage.py syncdb --database=vo

创建了一组新的空表。顺便说一句,它是一个 SQLite3 数据库。

如何将数据库中的现有表链接到 Django 中 models.py 中的类?

非常感谢。

最佳答案

  1. 您需要将数据库 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': '',
},
}
  1. 然后您可以从数据库自动生成模型。

    $ ./manage.py inspectdb --database=vo > your_app/models.py
  2. 配置数据库路由器。

checkout :Using Django's Multiple Database Support

关于python - 在 Django 中使用现有数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25697337/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com