DJANGO СВЯЗЬ ОДИН КО МНОГИМ
В связи "один ко многим" объект одной модели связан с несколькими объектами другой модели через внешний ключ. Django позволяет создавать такие связи при помощи поля ForeignKey для модели, имеющей связь «многие» и методов, доступных через связанные менеджеры QuerySet.
Рассмотрим пример связи модели "Автор" с моделью "Статья". У каждой статьи может быть только один автор, но автор может написать несколько статей. В модели "Статья" нужно добавить поле с внешним ключом на модель "Автор".
class Author(models.Model):
name = models.CharField(max_length=50)
email = models.EmailField(max_length=255)
class Article(models.Model):
title = models.CharField(max_length=255)
content = models.TextField()
author = models.ForeignKey(Author, on_delete=models.CASCADE)
Поле ForeignKey принимает первым аргументом класс модели, на которую устанавливается связь. Параметр on_delete=models.CASCADE задает поведение при удалении объекта связанной модели из БД - CASCADE означает удаление всех связанных объектов.
При создании объекта статьи мы можем указать автора:
author = Author.objects.create(name='Ivan', email='[email protected]')
article = Article.objects.create(title='Django model relationships', content='Example how use ForeignKey', author=author)
Для получения всех статей автора можно использовать отношение related_name:
Article.objects.filter(author__name='Ivan')
# или
author = Author.objects.get(name='Ivan')
author.article_set.all()
Уроки по SQL - Создание таблиц, добавление и выборка данных - Связь один ко многим
57 Типы связей. Один к одному. Один ко многим. Многие ко многим. Курс по Django
56 Связи между таблицами. Нормализация БД. Курс по Django
59 Связь \
User Profile With One To One Relationship - Django (3.0) Crash Course Tutorials (pt 16)
5. Уроки Django 2 - Создание модели Tag, отношения ManyToMany, includes (2018)
#9. Создание связей между моделями через класс ForeignKey - Django уроки
61 Создание записей в коде с полями ForeignKey и Manytomany
62 Связь \
Новые материалы:
- Как обновить pip в python
- Python tabulate модуль
- None в python
- Python как выйти из if
- Переведите слова python и print с английского языка на русский
- Python путь к исполняемому файлу
- Информационная безопасность python
- Как открыть html файл в python
- Django css подключение
- Python json dump и dumps разница
- Object of type int has no len python ошибка
- Дискорд музыкальный бот на python
- Excel в json python
- Png в jpg python