#python #django #relationship
#python #django #взаимосвязь
Вопрос:
Я безуспешно пытаюсь запросить типы хранилищ в определенном месте. Однако я могу запросить местоположения в городе, используя показанные модели.Я хочу использовать наборы запросов в меню с подменю с другим подменю в корневом URL-адресе проекта. Пожалуйста, помогите.
#models
class Supplier():
shopping_center = models.ForeignKey('Shopping_center')
storetype = models.ForeignKey('Storetype')
class City(models.Model):
name = models.CharField()
class Location(models.Model):
city = models.ForeignKey('City')
class Shopping_Center(models.Model):
location = models.ForeignKey('Location')
class Storetype(models.Model):
title = models.CharField()
Ответ №1:
objs = Supplier.objects.select_related('storetype ', 'shopping_center__location__city__name', ).filter(shopping_center__location__city__name__in=['some city'])
отфильтруйте приведенный выше цикл через objs, чтобы получить storetype
Комментарии:
1. «какой-то город» предполагает жесткое кодирование, чего я пытаюсь избежать
2. Вы можете передавать все, что захотите. Это пример.
3. Я понимаю, что могу это сделать, но это не то решение, которое я ищу. Я могу сделать city. location_set.all() но не может выполнить location.storetype_set.all() для отображения типа хранилища в подменю шаблона только в том случае, если тип хранилища доступен в этом местоположении.