Котики и ForeignKey: как связать своих питомцев в Django
Когда коты начинают общаться между собой, они создают целые сообщества. А мы с тобой научимся строить такие же связи в базах данных!
⭐️ Что такое ForeignKey? Или как кот Мурзик нашёл свою миску
ForeignKey - это специальный тип поля в Django, который позволяет связать две модели между собой. Представь, что у нас есть два кота: Мурзик и Барсик. У каждого из них своя миска с едой. Чтобы каждый кот мог найти свою миску, мы создаём связь между ними.
✨ Как это работает?
Давайте разберёмся на пальцах (или лапках):
Когда ты создаёшь ForeignKey, ты говоришь базе данных: "Смотри, этот кот связан с этой миской"
Внутри Django происходит магия: создаётся специальное поле, которое хранит ID связанной записи
💡 От древних библиотек до современных баз данных
В стародавние времена, когда не было компьютеров, библиотекари использовали карточки для связи книг с их авторами. Теперь мы делаем то же самое, только цифровым способом!
📋 Примеры использования
🎯 Разные ситуации, или как Мурзик меняет миски
🌟 Создание записи
🌟 Получение данных
🌟 Обновление связи
💭 Типы поведения при удалении
CASCADE 🐾 - Если миску удаляют, кот тоже пропадает
PROTECT 🐾 - Защищает миску от удаления, если там есть кот
SET_NULL 🐾 - Если миску удалят, кот останется без неё
SET_DEFAULT 🐾 - При удалении миски кот получает стандартную
🤔 Знаешь, почему коты любят ForeignKey? Потому что он помогает им всегда находить свои миски! Остались ли у тебя вопросы о том, как связывать модели в Django, или всё так же ясно, как утренний луч солнца на миске с кормом?
А на канале https://t.me/pytonism мы рассмотрим связь many-to-many, заходите ;)