Adding wiki editions field on serializer

remotes/origin/enhancement/email-actions
Jesús Espino 2014-07-26 09:43:33 +02:00
parent 5a2facc181
commit 7d2cc9e8dc
2 changed files with 8 additions and 0 deletions

View File

@ -24,6 +24,7 @@ class WikiPagePermission(ResourcePermission):
retrieve_perms = HasProjectPerm('view_wiki_pages') retrieve_perms = HasProjectPerm('view_wiki_pages')
create_perms = HasProjectPerm('add_wiki_page') create_perms = HasProjectPerm('add_wiki_page')
update_perms = HasProjectPerm('modify_wiki_page') update_perms = HasProjectPerm('modify_wiki_page')
partial_update_perms = HasProjectPerm('modify_wiki_page')
destroy_perms = HasProjectPerm('delete_wiki_page') destroy_perms = HasProjectPerm('delete_wiki_page')
list_perms = AllowAny() list_perms = AllowAny()
render_perms = AllowAny() render_perms = AllowAny()
@ -34,5 +35,6 @@ class WikiLinkPermission(ResourcePermission):
retrieve_perms = HasProjectPerm('view_wiki_links') retrieve_perms = HasProjectPerm('view_wiki_links')
create_perms = HasProjectPerm('add_wiki_link') create_perms = HasProjectPerm('add_wiki_link')
update_perms = HasProjectPerm('modify_wiki_link') update_perms = HasProjectPerm('modify_wiki_link')
partial_update_perms = HasProjectPerm('modify_wiki_link')
destroy_perms = HasProjectPerm('delete_wiki_link') destroy_perms = HasProjectPerm('delete_wiki_link')
list_perms = AllowAny() list_perms = AllowAny()

View File

@ -18,11 +18,14 @@ from rest_framework import serializers
from . import models from . import models
from taiga.projects.history import services as history_service
from taiga.mdrender.service import render as mdrender from taiga.mdrender.service import render as mdrender
class WikiPageSerializer(serializers.ModelSerializer): class WikiPageSerializer(serializers.ModelSerializer):
html = serializers.SerializerMethodField("get_html") html = serializers.SerializerMethodField("get_html")
editions = serializers.SerializerMethodField("get_editions")
class Meta: class Meta:
model = models.WikiPage model = models.WikiPage
@ -30,6 +33,9 @@ class WikiPageSerializer(serializers.ModelSerializer):
def get_html(self, obj): def get_html(self, obj):
return mdrender(obj.project, obj.content) return mdrender(obj.project, obj.content)
def get_editions(self, obj):
return history_service.get_history_queryset_by_model_instance(obj).count()
class WikiLinkSerializer(serializers.ModelSerializer): class WikiLinkSerializer(serializers.ModelSerializer):