Django REST:将url序列化为一个类别的对象列表

2024-06-26 10:54:43 发布

您现在位置:Python中文网/ 问答频道 /正文

硬事实: 如果它有任何不同,我将使用Django2.0和python 3.6。

我要实现的是一个链接,它指向属于摘要的对象列表。 我的婚姻关系很有男子气概型号.py.

class Summary(models.model):
  type=models.CharField

class Object(models.Model):
  summary= models.ForeignKey(Summary, on_delete=models.CASCADE)

在url.py

^{pr2}$

现在的想法是让用户可以单击可浏览API中的url并获取所有对象。 所以,我试着在序列化程序.py. 我无法在这里得到任何合理的URL,唯一的解决方案是对它进行硬编码。

^{pr3}$

这有可能吗? 是否需要编写MethodField? 如果是,我如何获得我需要的url?


Tags: 对象pyurl列表model链接modelssummary
1条回答
网友
1楼 · 发布于 2024-06-26 10:54:43

事实上,正如评论中所建议的那样,reverse可以做到这一点。 解决方案是:

def get_obj_url(self, obj):
    request = self.context.get('request')
    return request.build_absolute_uri(reverse('api-root')) + 'summary/{id}/objects'.format(
        id=obj.id)

在编辑:打字错误在

相关问题 更多 >