Перейти к содержимому
12 / 25

Что такое select_related и prefetch_related и как они решают проблему N+1 запросов?

N+1 — это когда после одного SELECT users идёт по одному SELECT post FROM posts WHERE user_id=... на каждого пользователя. select_related("author") делает JOIN (для FK/OneToOne), prefetch_related("comments") делает отдельный IN-запрос (для reverse FK / M2M).

Что такое select_related и prefetch_related и как они решают проблему N+1 запросов? | JScriptiser