创建(self,validated_data)方法中的self
是什么意思?
我有一个名为CloudServerPayOrderSerializer的序列化程序,我想覆盖create()方法。
class CloudServerPayOrderSerializer(ModelSerializer):
class Meta:
model = TradeRecord
exclude = (
'id',
'name',
'traderecord_num',
'money',
'balance',
'desc',
)
def create(self, validated_data):
user = getUserFormSerializer(self)
...
你知道,我覆盖了create方法,我想让用户通过self
。所以有一个util方法getUserFormSerializer
。
但我不知道self
在这里代表什么,是否代表CloudServerPayOrderSerializer
,如果不是,我不能将util方法命名为getUserFormSerializer
。
答案 0 :(得分:0)
它代表您在此类上调用此方法的具体对象。它可以有任何名称(将其命名为this
,object
或您喜欢的任何名称)但它始终是非静态方法的第一个参数,是的,当您在实际上调用该方法时对象,后者位于点之前,而不是括号中。
因此,在这种情况下,它用作:
cspos = CloudServerPayOrderSerializer()
cspos.create(42) # self is bound to cspos and validated_data to 42