Django фильтрует данные из нескольких баз данных
Это мой первый опыт использования мультибаз данных в django, и я столкнулся с проблемой при фильтрации данных от многих ко многим полям.
Таблица1:
class table1(models.Model):
field1 = = models.ManyToManyField(blank=True, related_name='field',related_query_name='details', to=table2, verbose_name='field1')
Таблица2:
class table2(models.Model):
multiple_fields = models.BooleanField(default=False)
status = = models.ForeignKey(status, on_delete=models.PROTECT)
data_type = models.ForeignKey(Type, on_delete=models.PROTECT)
Таблица3:
class table3(models.Model):
field_rep_id = models.IntegerField()
field_id = models.IntegerField()
Id | field_rep_id | field_id |
---|---|---|
1 | 3 | 200 |
1 | 3 | 210 |
Тогда вот как я фильтрую,
field_details = table1.objects.using('default').get(pk=3)
fields = field_details.field1
В таблице3 у меня нет прямого доступа к ней, поэтому я вызываю как описано выше, код работает, когда я использую только одну базу данных, но в многобазовой базе данных я не знаю, что это за процесс, поэтому я получил эту ошибку.
django.db.utils.ProgrammingError: relation "app1_table3" does not exist
LINE 1: ...updated_at" FROM "app2_table2" INNER JOIN "app1_table3...
Ожидаемый выход:
[200,210]