2017-12-04 8 views
0

私は次のように設定私のシリアライザコードがあります。今、このシリアライザは、以下のコードを使用してビューから呼び出されているDjango Rest Frameworkシリアライザのinitメソッドからオブジェクトを取得する方法は?

class ProductSerializer(serializers.ModelSerializer): 
    """ 
    * Serializes Products. 
    """ 
    def __init__(self, *args, **kwargs): 
     print kwargs.pop('product_passed') 
     super(ProductSerializer, self).__init__(*args, **kwargs) 

product_passed = Product.objects.get(pk=pk) 
product_serializer = ProductSerializer(product_passed) 

私が何をしたいのかがコールされると私のシリアライザinitメソッドからのproduct_passed。これどうやってするの?今、私の方法は機能しません。

答えて

2

このようなパスを:

product_serializer = ProductSerializer(product_passed, product_passed= product_passed) 

そしてkwargsからのアクセスを:kwargs.get('product_passed')

+0

エラーを排除し最適なソリューションのための使用 'pop'が使用デフォルト値である場合 –

関連する問題