ログに記録されたユーザーがスーパーユーザーでない場合は、DjangoAdminのフォームから一部のフィールドを非表示にする必要があります。これは私が思いついたものです:
def get_form(self, request, obj=None, **kwargs):
form = super(RestauranteAdmin, self).get_form(request, obj, **kwargs)
if not request.user.is_superuser:
form.base_fields.pop('approved')
form.base_fields.pop('day_of_the_week')
form.base_fields.pop('photo')
form.label_suffix = ''
return form
これは確かに必要なフィールドを非表示にしますが、ユーザーがスーパーユーザーでない場合、何らかの理由で管理者は私のインラインのレンダリングも停止します。私が見る限り、この方法はインラインとは何の関係もないはずです。私は何かが足りないのですか?
ありがとう、