Встречается на собеседованиях • сегодня

Что такое ManyToManyField в Django

ManyToManyField в Django — это поле модели, представляющее отношение "многие ко многим" между двумя моделями. Оно создаёт промежуточную таблицу для хранения связей между записями.

Пример:

python
from django.db import models

class Author(models.Model):
    name = models.CharField(max_length=100)

class Book(models.Model):
title = models.CharField(max_length=100)
authors = models.ManyToManyField(Author)

text
Здесь книга может иметь несколько авторов, а автор — несколько книг.  

**Особенности:**  
- Автоматически создаётся промежуточная таблица (в примере — `book_authors`).  
- Можно указать `through` для кастомной промежуточной модели.  
- Доступны методы `add()`, `remove()`, `clear()`, `set()` для управления связями.  

**Дополнительные параметры:**  
- `related_name` — имя обратной связи.  
- `symmetrical` (для рекурсивных связей).  
- `through_fields` — если промежуточная модель сложная.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы