函数不会向模型添加数据(通过序列化程序)

时间:2015-10-10 14:05:08

标签: django-models django-rest-framework

这是我写的函数,它在'Url1'模型中检查名为'url'的字段,如果它是空的则继续。

def mozs():
    getids = Url1.objects.values_list('id', flat=True)
    for id in getids:
        if Url1.objects.get(id=id).pda == None:

            authorities= {"pda": 58.26193857945012, "upa": 36.56733779379807}    
            authorities['keyword'] = id

            serializer = MozSerializer(data=authorities)

            if serializer.is_valid():
                serializer.save()  

            print "For %d we added %s" % (id, authorities)

这是输出:

  

对于37我们添加了{'keyword':37,'pda':58.26193857945012,'upa':36.56733779379807}

但它不会添加它。这是序列化程序:

class MozSerializer(serializers.Serializer):    
    keyword = serializers.PrimaryKeyRelatedField(queryset=KW.objects.all())
    pda = serializers.FloatField()
    upa = serializers.FloatField() 


    def save(self):
        keyword = self.validated_data['keyword']
        pda = self.validated_data['pda']
        upa = self.validated_data['upa']

        Url1.objects.update(pda=pda, upa=upa)

0 个答案:

没有答案