Я читал статьи и пытался реализовать в моделях.
user = models.ForeignKey(settings.AUTH_USER_MODEL)
, но всякий раз, когда я пытаюсь сохранить форму для пользователя, указывается, что значение не может быть нулевым. Я предполагаю, потому что он не передает / не забирает AUTH_USER
например:
class Degree(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL)
degreeLevel = models.CharField(max_length = 50)
areaOfStudy = models.CharField(max_length = 50)
У меня такое ощущение, что при создании пользователя мне нужно создать сигнал для всех моделей, которые используют user = models.ForeignKey (settings.AUTH_USER_MODEL), но я изо всех сил пытаюсь найти ресурс, который занимается этой проблемой от начала до конца, поэтому Не знаю, в чем я ошибаюсь.
Любая помощь была бы отличной ...
Этот вопрос касается profiles_details.id не существует Django
Спасибо.
Я пробовал:
user = models.ForeignKey (settings.AUTH_USER_MODEL, null = False, on_delete = models.CASCADE, verbose_name = _ (u "Пользователь")) Но появилось сообщение об ошибке при выполнении миграции:
NameError: name '_' is not defined
если я возьму подробное имя и попытаюсь выполнить миграцию, я получу: эта ошибка:
Вы пытаетесь добавить к деталям поле "пользователь", не допускающее значения NULL, без значения по умолчанию; мы не можем этого сделать (базе данных нужно что-то для заполнения существующих строк). Пожалуйста, выберите исправление: 1) Укажите одноразовое значение по умолчанию (будет установлено для всех существующих строк) 2) Закройте и позвольте мне добавить значение по умолчанию в models.py
Также смотрел https://docs.djangoproject.com/en/dev/topics/auth/customizing/#referencing-the-user-model
Но не понял, что делать с:
django.contrib.auth.get_user_model().
Вы действительно установили какое-либо значение пользователя при создании новой степени?
нет, я не знал, я не знаю, как это сделать, я предположил, что django получит пользователя входа / регистрации и заполнит это пространство настройками. AUTH_USER_MODEL), поскольку учебник действительно не углубляется в это ... Если бы вы могли указать мне на один или объясни, что было бы здорово