脱水不适用于django tastypie api

时间:2016-08-18 05:03:33

标签: django tastypie

在我的API中,我使用def get_list(self, request, **kwargs):方法。

现在我需要附加一个动态字段来提供一些额外的数据。

所以我尝试使用def dehydrate(self, bundle):方法。

但在这种情况下,def dehydrate(self, bundle):方法没有执行。如果我删除或保留评论def get_list(self, request, **kwargs):方法,则会再次执行def dehydrate(self, bundle):

在这种情况下,如何将额外的字段(动态字段)附加到我的API?

1 个答案:

答案 0 :(得分:-1)

您要覆盖错误的方法,请使用obj_get_list提供的数据不是get_list

查看课程Resourceresources.py),行号是指django-tastypie的版本0.13.3:

  • 1319:get_list的定义,在第1339行中删除了捆绑包
  • 1132:obj_get_list的定义,引用评论Fetches the list of objects available on the resource,此方法在ModelResource中被覆盖,并为Django ORM提供了工作版本

您可能还想在此处阅读https://django-tastypie.readthedocs.io/en/latest/non_orm_data_sources.html,其中介绍了要覆盖的方法。