私はフィールドを持つリソースを持っていますsome_field
。
GET-parameter でリクエストを行うとき、レスポンスの the フィールドを除外する必要がありますsome_get_param
。
脱水メソッドでそれを削除すると、このフィールドの値の計算で必要以上の作業を行うことになります。これを行うより良い方法はありますか?
通常のフィールドにすぎない場合、実際にはオーバーヘッドはあまりありません。より大きなオーバーヘッドは、(ほぼ間違いなく) サーバーへのペイロードにあります。つまり、応答にフィールドがないことは、すでに改善されている可能性があります。
docsexcludes
のように、フィールドをリストに追加することもできます。
最後に、それでもうまくいかない場合は、 を使用してカスタム エンドポイントを作成できますoverride_urls
。単純なフィールド除外の場合、これはやり過ぎです。
文字列の名前付けの代わりにフィールド定義に追加し、メソッドattribute=None
でフィールドを手動で脱水するか、値full_dehydrate
に応じて応答からこのフィールドを削除しbundle.request.GET.get('param', None)
ます。