Я рассмотрел несколько вопросов, которые выглядели одинаково, но ни один из них не обсуждал проблему с точки зрения админ-панели.
Мне нужно проверить, есть ли у пользователя разрешение оставить поле пустым. Я хотел использовать request.user, но не знаю, как передать запрос из EntryAdmin в ModelForm. Я хотел сделать что-то вроде этого:
class EntryAdminForm(ModelForm):
class Meta:
model = Entry
def clean_category(self):
if not self.request.user.has_perm('blog.can_leave_empty_category') and not bool(self.category):
raise ValidationError(u'You need to choose a Category!')
else:
return self.cleaned_data['category']