我使用兩個mysql模式X和Y,它們都包含多個表,但在兩個模式中都有一個表具有相同的名稱。如何在django中使用兩個具有相同名稱的mysql在mysql中的兩個不同模式
兩者的模式如下:
+--------------+--+--------------+
| X | | Y |
+--------------+--+--------------+
| name | | album_info |
+--------------+--+--------------+
| invite | | photo_info |
+--------------+--+--------------+
| photo | | photo |
+--------------+--+--------------+
| user_details | | temp |
+--------------+--+--------------+
現在,我想在這兩個表中查詢,但是當我寫表結構中具有相同名稱的models.py文件,它拋出的錯誤/異常。 我宣佈如下routers.py文件都表:
modelDatabaseMap = {
.
'photo': 'default',
.
.
.
'photo': 'y',
}
(X是我的默認模式)。 宣佈我的models.py如下:
class Photo(models.Model):
id = models.AutoField(db_column='ID', primary_key=True)
has_tagged_with = models.IntegerField()
has_reposted_with = models.IntegerField()
.
.
class Meta:
managed = False
db_table = 'photo'
class Photo(models.Model):
id = models.AutoField(db_column='ID', primary_key=True)
account_id = models.IntegerField()
p_id = models.IntegerField()
is_profile = models.IntegerField()
.
.
class Meta:
managed = False
db_table = 'photo'
現在,模糊性是首先在名稱,在聲明中models.py,其次在查詢。 我被困在如何通過orm單獨查詢兩個表。 任何關於此的幫助/線索都會有所幫助。提前致謝。
你有每個模式的連接?你的'DATABASES'配置如何? –
DATABASES配置如下: '數據庫= { '缺省':{ '發動機': 'django.contrib.gis.db.backends.mysql', 'NAME': 'X', '用戶' :DATABASE_USERNAME, '密碼':DATABASE_PASSWORD, 'HOST':DATABASE_HOST_NAME, '端口': '3306', '選項':{ '字符集': 'utf8mb4'}, } }' 同我的方式將模式Y添加到字典中。 – Shrey
這就是要點。你有兩個數據庫配置?一個'default'和其他'y',例如? –