1

刚开始使用django-reversion和django 教程中的 Polls 应用程序。为了让它工作,我所做的就是mysite/polls/admin.py使用以下代码创建:

from django.contrib import admin
from polls.models import Poll
import reversion
#admin.site.register(Poll)
class PollAdmin(reversion.VersionAdmin):
    pass
admin.site.register(Poll, PollAdmin)

换句话说,我只完成了管理员集成。在 Poll 模型中,我添加了一个名为approved.

one_object = Poll.objects.all()[1]
version_list = reversion.get_unique_for_object(one_object)

以上version_list包含所有版本的one_object. 我只想获得所有具有approved==True. 然后,我希望查看结果,以便仅显示已批准的民意调查。我该如何过滤这个?

4

1 回答 1

0

每个版本对象都有一个field_dict包含该版本对象字段值的属性。因此,您可以按如下方式过滤列表:

filtered_versions = [v for v in version_list if v.field_dict["approved"] ==  True]
于 2012-12-29T16:35:16.940 回答