У меня есть модель под названием Event и модель Person. Я хочу иметь возможность определять роли для события и уметь назначать много людей роли событий. Каждый человек может участвовать только в одной роли для Мероприятий. Каков наилучший способ создания этих отношений в моих моделях?Django уникальное отношение
0
A
ответ
1
Возможно, так?
class Event(models.Model):
name = models.CharField(...)
...
# a role is created and assigned to an event.
class Role(models.Model):
event = models.ForeignKey(Event)
...
# person is created and assigned a role. I would foreignkey to the role so the person can only be assigned to one role. And not several roles assigned to one person.
class Person(models.Model):
role = models.ForeignKey(Role)
...
Создать событие: Концерт
Создание роли: Bouncer.event = Концерт
Создайте несколько человек: Jim.role = Bouncer, John.role = Bouncer, и т.д ..
1
Вам нужна модель Role:
class Event(models.Model):
# ...
class Person(models.Model):
# ...
class Role(models.Model):
event = models.ForeignKey(Event)
person = models.ForeignKey(Person)
# ...
Таким образом, событие может иметь несколько ролей, каждая из них которым управляет один человек.
+0
Я хочу, чтобы у каждой роли было много людей, но каждый человек может быть только одной ролью для конкретного события. – barchiesi
Смежные вопросы
- 1. difflib.SequenceMatcher не возвращает уникальное отношение
- 2. Django, уникальное полевое поколение
- 3. уникальное поле django
- 4. Django 1.5 + Отношение пользовательской модели
- 5. Django администратора отношение фильтр
- 6. Django - Пользовательское отношение назад
- 7. Django отношение модели
- 8. Отношение Django не работает?
- 9. Django комментарии обратное отношение
- 10. Модельное отношение в Django
- 11. Отношение Django models
- 12. Django: отношение не существует
- 13. Django косвенное общее отношение
- 14. Django симметричное отношение
- 15. Django модель отношение
- 16. Django модель ForeignKey Отношение
- 17. Уникальное значение столбца в django
- 18. Уникальное значение BooleanField в Django?
- 19. Django уникальное ограничение + ошибки формы
- 20. рекурсивное отношение в Django администратора
- 21. django query select_related отношение span
- 22. Отношение внешних ключей Django Form
- 23. Django модель/SQL Отношение Ошибка
- 24. django простое отношение в шаблоне
- 25. django python - отношение не существует
- 26. django many to many отношение
- 27. Ограниченной ManyToMany отношение в Django
- 28. Django ManyToMany отношение добавить() ошибка
- 29. Django: ProgrammingError отношение не существует
- 30. Отношение Hibernate Many-To-Many создает ненужное уникальное ограничение
С этим может быть только один человек. Мне нужно много людей, чтобы быть в роли, но только одна роль в каждом событии. – barchiesi
Я не думаю, что это правильно. Это было бы правдой, если бы «unique» был установлен как true. 'role = models.ForeignKey (Role, unique = True)' Как это, вы можете создать несколько объектов Person и указать их все на один и тот же объект Role, а затем указать, что объект Role для объекта Event. – teewuane
Итак, что же это такое, что говорит, что Джим может быть только вышибалой, а не какой-то другой ролью для этого события? – barchiesi