Django: prefetch_related из разных бд без связи

Рассмотрите следующие модели:

# in database "pizzas"
class Pizza(models.Model):
    name = models.CharField()

# in database "toppings"
class Topping(models.Model):
    metadata = models.JSONField()

В таблице pizzas в базе данных pizzas у меня есть

id | name
 1 | BBQ Meat Lover
 2 | Pepperoni

В таблице топпингов в базе данных топпингов у меня есть

id | metadata
 1 | {"pizza":{"id": 1}}
 2 | {"pizza":{"id": 2}}

Теперь я понял, как я могу переместить идентификатор пиццы на уровень выше в наборе запросов, сделав:

Topping.objects.annotate(pizza_id=KeyTextTransform("id", "pizza"))

Теперь как я смогу выбрать связанные пиццы, используя pizza.id ?

В идеале, я хотел бы иметь возможность доступа к набору запросов следующим образом:

for topping in queryset:
    print(topping.pizza.name)
Вернуться на верх