繁体   English   中英

字段为null = True和blank = True序列化器JS中没有错误

[英]Field with null=True and blank=True serializer None error in JS

我有一个模特

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,'answer':3,'question_image':无,'option':['27','28','29','31'],'问题' :“印度有多少个州?”}

我想用这个JSON在JavaScript中,给了我错误None没有定义。 在序列化程序中将None更改为null的最简单,干净的解决方案是什么?

假设您收到对象列表,并将其存储在名为json的变量中。

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

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

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

  });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM