0

假设我有一个像文档这样的例子:

class Reporter(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)
    email = models.EmailField()

    def __unicode__(self):
        return u"%s %s" % (self.first_name, self.last_name)



class Article(models.Model):
    headline = models.CharField(max_length=100)
    pub_date = models.DateField()
    reporter = models.ForeignKey(Reporter)

    def __unicode__(self):
        return self.headline
    def json(self):
        return {
            'headline': self.headline,
            'pub_date': self.pub_date,
    }

    class Meta:
        ordering = ('headline',)

我将如何为记者进行 JSON 转储,返回所有相关的文章?我希望 Reporter 类有这样的东西:

    def json(self):
    return {
                'first_name': self.first_name,
                'last_name': self.last_name,
                'email': self.email,
                'articles': for a in self.article_set:
                                    a.json(),
    }

但没有这样的运气。我查看了文档,但一切似乎都朝着另一个方向发展。

4

1 回答 1

3

尝试这个 :

def json(self):
return {
            'first_name': self.first_name,
            'last_name': self.last_name,
            'email': self.email,
            'articles': [ a.json for a in self.article_set.all()]
}
于 2013-07-14T21:27:11.263 回答