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

Что такое OneToOneField в Django

OneToOneField в Django — это поле модели, которое создает отношение "один к одному" между двумя моделями. Каждый экземпляр первой модели связан ровно с одним экземпляром второй модели, и наоборот. Это полезно для расширения функциональности модели без изменения её структуры.

Пример:

python
from django.db import models

class UserProfile(models.Model):
    user = models.OneToOneField('auth.User', on_delete=models.CASCADE)
    bio = models.TextField()
    phone = models.CharField(max_length=20)

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

  • Создает уникальное ограничение в базе данных
  • При удалении главного объекта можно настроить поведение через on_delete (CASCADE, PROTECT и т.д.)
  • Доступ к связанному объекту осуществляется через атрибут модели

Используется, когда нужно:

  • Разделить данные между разными моделями
  • Расширить встроенные модели Django (например, User)
  • Создать строго уникальные связи между объектами
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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