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

Что такое композиция в ORM

Композиция в ORM — это отношение между моделями, где один объект является частью другого и не существует без него (сильная связь). Например, Order и OrderItem — удаление заказа должно удалять все его позиции.

Пример в SQLAlchemy:

python
class Order(Base):
    __tablename__ = 'orders'
    id = Column(Integer, primary_key=True)
    items = relationship("OrderItem", cascade="all, delete-orphan")

class OrderItem(Base):
tablename = 'order_items'
id = Column(Integer, primary_key=True)
order_id = Column(Integer, ForeignKey('orders.id'))

text

Ключевые особенности:
- Используется `cascade="all, delete-orphan"` для автоматического удаления зависимых объектов
- Внешний ключ обязателен (FOREIGN KEY)
- В отличие от агрегации, композиция подразумевает жесткую жизненную связь
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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