特定のユーザー権限レベルで一部のフィールドを読み取り専用にするにはどうすればよいですか?Django REST API:カーテン権限レベルでフィールドを読み取り専用にする
Django REST APIプロジェクトがあります。 foo
とbar
の2つのフィールドを持つFoo
シリアライザがあります。 2つの許可 - USER
とADMIN
があります。
シリアライザは、次のように定義されます
class FooSerializer(serializers.ModelSerializer):
...
class Meta:
model = FooModel
fields = ['foo', 'bar']
どのように1は、必ず「バー」フィールドは読み取り専用ですADMIN
ためUSER
と書き込み可能になりませんか?
私は次のようになめらかを使用します。
class FooSerializer(serializers.ModelSerializer):
...
class Meta:
model = FooModel
fields = ['foo', 'bar']
read_only_fields = ['bar']
しかし、(許可に応じて)、それを条件付きにしますか?
をあなたはhttp://www.django-rest-framework.org/api-guide/permissionsを読みました/? –
はい、参照を読んでください。しかし、情報を提供する情報が見つかりませんでした - 異なる権限のために特定のフィールドを表示/非表示する方法 – Oleg