字段为null = True且空白= True序列化程序JS中没有错误

时间:2017-09-19 14:22:33

标签: python django django-rest-framework

我有一个模特

class Question(models.Model):
    question = models.TextField(blank=False, null=False)
    question_image = models.ImageField(blank=True, null=True, upload_to='question')
    option = ArrayField(models.CharField(max_length=50, blank=False, null=False),size=4)
    answer = models.IntegerField(choices=((1,'1'),(2,'2'),(3,'3'),(4,'4')))
    description = models.TextField(blank=True,null=True )

coressponding序列化器是

class QuestionSerializer(serializers.ModelSerializer):
    class Meta:
        model = Question
        fields = ('id', 'question', 'question_image', 'option', 'answer', 'description')
    read_only_fields = ('id',)

我得到的序列化对象是

  

{'description':无,'id':1,'回答':3,'question_image':无,'选项':['27','28','29','31'], '问题':'印度有多少州?'}

我想在javascript中使用这个JSON,这样我就没有定义错误None。在序列化程序中将None更改为null的最简单,最简洁的解决方案是什么?

1 个答案:

答案 0 :(得分:0)

假设您收到了一个对象列表并存储在名为json的变量中。

如果描述返回None,则可以将空字符串传递给变量。

  $.each(json, function(key,value){

    if ( value.description ) {
      var description = value.description;
    } else {
      var description = "";
    };

  });