Фильтровать данные на основе ForeignKey в django - PullRequest
0 голосов
/ 01 мая 2020

У меня есть три типа моделей, как показано ниже, и теперь я хочу применить к ним фильтр.

  1. Я хочу отфильтровать список всех категорий из foodItem, содержащих вынос, dine_in, функцию отдельно ,
  2. Я хочу отфильтровать список подкатегории, содержащей категорию
  3. Я хочу отфильтровать список продуктов, содержащих подкатегорию.

Для получения дополнительной информации я хочу отфильтровать продукт питания в иерархическом подходе. Я также приложил скриншот, Как я хочу отобразить свои данные, и извините за мой бедный engli sh.

class FoodCategory(TimeStampWithCreator):
    title = models.CharField(max_length=55)


class FoodSubCategory(TimeStampWithCreator):
    title = models.CharField(max_length=55)

class FoodItem(TimeStampWithCreator):
    CATEGORY_CHOICES = (
        ('takeway', 'Takeway'),
        ('dine_in', 'Dine In'),
        ('function', 'Function'),
    )
    type_menu_select = models.CharField(max_length=20, choices=CATEGORY_CHOICES, default='takeway')
    category = models.ForeignKey(FoodCategory, on_delete=models.CASCADE)
    sub_category = models.ForeignKey(FoodSubCategory, on_delete=models.CASCADE)
    title = models.CharField(max_length=55)

Я хочу отображать данные во внешнем интерфейсе следующим образом. enter image description here

...