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

Что такое прокси модель в Django

Прокси-модель в Django — это модель, которая наследует от другой модели, но не создаёт новую таблицу в БД. Она использует ту же таблицу, что и родительская модель, но может изменять поведение (например, сортировку, менеджер или методы).

Основные особенности:

  • Не создаёт отдельную таблицу в БД.
  • Может переопределять менеджер, методы, мета-опции (ordering, verbose_name).
  • Полезно для создания разных "представлений" одной модели.

Пример:

python
from django.db import models

class Person(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)

class MyPerson(Person):
    class Meta:
        proxy = True
        ordering = ["last_name"]

    def full_name(self):
        return f"{self.first_name} {self.last_name}"

Здесь MyPerson — прокси-модель для Person. Записи хранятся в одной таблице, но MyPerson добавляет метод full_name() и изменяет сортировку по умолчанию.

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

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

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

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