Изучение лучшего способа сделать это (Модели Django)
Я делаю Django и у меня есть 4 модели. Район, провинция, школы и пользователь. Округ принадлежит провинции, в модели/таблице School есть внешние ключи, к которым принадлежат школы. В таблице User у меня есть внешние ключи District, Province и School. Эти кортежи были названы Province или District в таблицах, которые являются FK. Ошибка, которую я получаю, заключается в конфликте и необходимости добавить related_name. Мне нужно, чтобы кто-нибудь объяснил мне значение для related_name. Из моего чтения следует, что оно показывает имя таблицы, если FK находится в модели Comments, то related_name='comments'. В моем случае у меня есть три FK в модели User, так как мне управлять этим?
Надеюсь, это попытается объяснить мой вопрос.
related_name
используется для обратных отношений...
Пример одного: из объекта District я хочу получить всех учеников в различных
districtObj.student_set.all()
# > Returns a list of Students
# format: {model}_set
Теперь у вас есть конфликт, потому что student_set
(по умолчанию) занято, я не знаю на 100% почему, но это так.
Может кто-то умнее меня объяснит...
Теперь, когда вы знаете, что вы устанавливаете, надеюсь, вы сможете придумать схему именования...
Вот пример: если вы установите связанное имя Student.distinct в 'students_in_district', вы будете использовать его следующим образом:
districtObj.students_in_district.all()
Надеюсь, это поможет!