sun*_*eet 4 python django django-models wagtail
我有以下两个类,我app.models正在使用 wagtail API 将数据作为 json
class AuthorMeta(Page):
author=models.OneToOneField(User)
city = models.ForeignKey('Cities', related_name='related_author')
class Cities(Page):
name = models.CharField(max_length=30)
Run Code Online (Sandbox Code Playgroud)
因此,当我尝试时/api/v1/pages/?type=dashboard.AuthorMeta&fields=title,city,它返回以下数据:
{
"meta": {
"total_count": 1
},
"pages": [
{
"id": 11,
"meta": {
"type": "dashboard.AuthorMeta",
"detail_url": "http://localhost:8000/api/v1/pages/11/"
},
"title": "Suneet Choudhary",
"city": {
"id": 10,
"meta": {
"type": "dashboard.Cities",
"detail_url": "http://localhost:8000/api/v1/pages/10/"
}
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
在城市字段中,它返回城市的id和meta。如何在不进行额外查询的情况下在此处的响应中获取城市名称?:/
我在文档中找不到任何解决方案。我错过了什么吗?
使用 Django 模型属性通过 ForeignKey 返回:
class AuthorMeta(Page):
author=models.OneToOneField(User)
city = models.ForeignKey('Cities', related_name='related_author')
city_name = property(get_city_name)
def get_city_name(self):
return self.city.name
Run Code Online (Sandbox Code Playgroud)
检查术语属性以更好地理解概念
| 归档时间: |
|
| 查看次数: |
757 次 |
| 最近记录: |