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

Что такое аннотация в ORM

Аннотация в ORM (например, Django ORM или SQLAlchemy) — это механизм добавления метаданных к полям модели или запросам для расширения их функциональности. Она позволяет указывать дополнительные параметры, такие как типы данных, ограничения или связи между таблицами.

В Django аннотации часто используются для добавления вычисляемых полей к результатам запроса с помощью annotate():

python
from django.db.models import Count
from myapp.models import Author

# Аннотация для подсчета книг у каждого автора
authors = Author.objects.annotate(book_count=Count('books'))

В SQLAlchemy аннотации могут применяться для указания типов или других метаданных:

python
from sqlalchemy import Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class User(Base):
    __tablename__ = 'users'
    id = Column(Integer, primary_key=True)
    name = Column(String(50), nullable=False)  # Аннотация nullable=False

Аннотации помогают ORM лучше понимать структуру данных и оптимизировать запросы.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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