Доступ к 'self.user' или 'self.user_id' в методе clean() модели Django
Мне нужно знать, возможно ли это сделать в методе clean или save модели (в идеале clean), без использования форм, поскольку я хочу, чтобы определенная логика проверки была напрямую связана с моделью, чтобы и формы, и команды менеджера (например, Model.objects.create() в оболочке или представлениях) проверялись одинаково.
У меня есть ModelB, где user является внешним ключом ModelA.
Затем у меня есть представление, в котором форма для ModelB проверяется перед созданием ModelB:
if form.is_valid():
form.save()
Как мы все знаем, form.is_valid() вызывает model.clean() через self.instance.full_clean(). и я хочу подтвердить кое-что о self.user в рамках clean() метода ModelB. Однако в этом чистом методе модели B, self.user производит:
raise self.RelatedObjectDoesNotExist(
models.ModelB.user.RelatedObjectDoesNotExist: ModelB has no user.
и self.user_id возвращает None.
По сути, можно ли ссылаться на self.user или self.user_id в чистом методе ModelB, или это должно происходить в его методе save?