Задача моделирования Django, нужно подмножество поля внешнего ключа - PullRequest
2 голосов
/ 24 ноября 2010

Я намереваюсь создать приложение для категорий, которое будет иметь отдельные наборы категорий (словари) для страниц, галереи, типов товаров и т. Д. Поэтому потребуется две модели: словарь и категория.

КатегорииКод /models.py может выглядеть примерно так:

class Vocabulary(models.Model):
    title = models.CharField()

class Category(models.Model):
    title = models.CharField()
    vocabulary = models.ForeignKey(Vocabulary)

Из моих страниц, блогов, галерей и т. д. приложений, как мне понадобится поле ForeignKey для категорий:

class Page(models.Model):
    title = models.CharField()
    content = models.TextField()
    category = models.ForeignKey('categories.Category')

Этоконечно, перечислит все доступные категории в приложении администратора.Если у меня есть продукт, я хочу, чтобы только категории продуктов были доступны.Как я могу отфильтровать доступные категории по конкретному словарю?

Я изучаю Django и не совсем уверен, с чего начать.Может у меня вся модель не так?Если есть какие-либо приложения, которые уже делают это, пожалуйста, дайте мне знать.

1 Ответ

5 голосов
/ 24 ноября 2010

Фильтрация выбора выполняется следующим образом: с использованием набора запросов или в интерфейсе администратора с помощью limit_choices_to.

.
...