Django или, возможно, POSTGRESQL теряет информацию о первичных ключах и внешних ключах, когда вы создаете представление, которое относится к представлению, которое относится к таблице, имеющей первичные и внешние ключи?
У меня есть View-A (все 3 поля являются внешними ключами), и это представление получает 2 поля из View-B.View-B получает свои поля из таблицы-C.Таблица C имеет первичный ключ и внешний ключ.
Итак, когда я обращаюсь к View-A с моей моделью django, как мне обрабатывать эти поля?Я знаю, что это внешние ключи, но любой вид фильтра приводит к пустому Queryset.если я использую что-то вроде
myview = viewA.objects.using(db).all() # getting all the data
myview2= viewA.objects.using(db).all()[:5] # getting 5 objects
.
class viewA(models.Model):
class Meta:
db_table = "viewA"
x = models.ForeignKey(x, primary_key=True)
y = models.ForeignKey(y)
z = models.ForeignKey(z)
Проблема в том, что я не могу фильтровать!
response=viewA.objects.using(db).filter(y_id=1) ERROR:= FieldError
За всеми этими FK есть целое число/ bigint fields.
Редактировать: Поскольку это ВНУТРЕННИЕ СОЕДИНЕНИЯ, я хотел бы получить доступ не только к полям из ViewA, но и из ViewB.x, y, z относятся к типу ViewB.Может быть, использовать select_related () ?
То есть какие-либо подсказки, если Django или postgres теряют информацию о ключах в представлениях, которые относятся к другим представлениям?