1
複数の値のビットマスクであるflags
というプロパティを持つモデルがあります。 django-rest-framework
を使用してAPIとして公開したいと思います。異なるフラグは異なるブール値のプロパティです。たとえば、フラグがFLAG_NEW=1
,FLAG_DELETED=2
の場合は、isNew
とisDeleted
フィールドを公開したいとします。読み取り専用モデルの場合、これは簡単です。SerializerModelField
を使用し、フラグが設定されているかどうかを確認してください。しかし、これはデシリアライズしたいときには機能しません(これは読み取り専用フィールドです)。私はカスタムフィールドを使うことができますが、source=
パラメータに何を入れるべきですか?もし私がsource=flags
を入れたら、彼らはお互いを上書きしてしまいます。どうすれば初期値を得ることができますか?Django RESTフレームワークシリアライザ:1つのプロパティに複数のフィールドマッピング
class MyModel(models.Model):
FLAG_NEW = 1
FLAG_DELETED = 2
flags = models.IntegerField()
....
class MyModelSerializer(models.Model):
isDeleted = ???
isNew = ???
? –