0
状況は次のとおりです。私のシリアライザでDjango Rest Frameworkシリアライザメソッドのフィールドで再利用するオブジェクトを保存する方法は?次のように
- 2のフィールドは、それぞれのコンテンツを取得するために、シリアライザメソッドフィールドの機能を使用しています。
- これらのフィールドのそれぞれで、と同じ正確な関数を呼び出してコンテンツを生成しています。ちょっとこのよう
:
class ProductSerializer(serializers.ModelSerializer):
field_1 = serializers.SerializerMethodField()
def get_field_1(self, obj):
content = generate_content(obj)
return content.field_1
field_2 = serializers.SerializerMethodField()
def get_field_2(self, obj):
content = generate_content(obj)
return content.field_2
あなたが見ることができるように、両方の方法は、同じ引数で、同じ関数を呼び出すため、まったく同じ結果を得ています。 generate_content関数は非常に大きいので、コンテンツを一度保存してから2つのフィールドを生成するのが最も良いと感じています。どうすればこの問題を解決できますか?ありがとう!
generate_content機能を何? – Carlos