【发布时间】:2014-01-25 14:18:51
【问题描述】:
我想使用tastepie 分享django 模型历史(由django-simple-history 创建)。
问题是,如何为此目的准备ModelResource。
模型历史的访问权限是 model.history 经理。因此,我们可以通过model.history.all()获得模型的所有更改
我想获得什么?例如。我有 django 模型 Task 和 API 端点:
-
http://127.0.0.1/api/v1/task- 显示所有任务列表 -
http://127.0.0.1/api/v1/task/1- 显示所选任务的详细信息 -
http://127.0.0.1/api/v1/task/1/history- 显示任务编号的历史记录。 1
前两个链接呈现ModelResource的默认行为。到现在为止我有什么?
class TaskResource(ModelResource):
class Meta:
# it displays all available history entries for all task objects
queryset = Task.history.all()
resource_name = 'task'
def prepend_urls(self):
return [
url(r"^(?P<resource_name>%s)/(?P<pk>\w[\w/-]*)/history$" % (self._meta.resource_name,),
self.wrap_view('get_history'),
name="api_history"),
]
def get_history(self, request, **kwargs):
#...
get_history 应该返回带有历史条目的包。但是这个方法应该是什么样子?
我想,我需要创建包含所需数据的捆绑包,但不知道我应该怎么做。
有人有简单的历史和美味的经验,可以举一些简单的例子吗?
【问题讨论】:
标签: django model history tastypie