Я новичок в Джанго.
У меня есть 2 простых объекта, давайте назовем их - File и FileGroup:
- FileGroup может содержать список файлов, отсортированных в соответствии с полем «порядок».
- Каждый файл может быть связан с несколькими группами.
так что в основном таблицы БД будут:
1) Файл
2) File_Group
3) Таблица File_Group_Mapping, в которой есть столбец с именем «order» в дополнение к fk для файла и файловой группы.
Здесь существует отношение многие ко многим, но объект File не должен знать о существовании FileGroup (в моем случае это не имеет смысла)
Мои вопросы -
Есть ли способ создать здесь однонаправленные отношения «многие ко многим / один ко многим»? Как я могу смоделировать это с Django?
Я не смог найти способ сделать его однонаправленным через django.
Я видел решение, которое использует что-то вроде -
class FileGroup(...):
files = models.ManyToManyField(File, through='FileGroupMapping')
но это сделает объект File осведомленным о FileGroup.
Я также могу сделать это путем отображения таблицы File_Group_Mapping в файле моделей следующим образом -
class FileGroupMapping(...):
files = models.ForeignKey(File)
groups = models.ForeignKey(FileGroup)
order = models...
Какой лучший способ сделать это через django?
Спасибо