Minor changes on wiki api.
parent
d36d19b796
commit
6090254821
|
@ -5,27 +5,32 @@ from django.utils.translation import ugettext as _
|
|||
from django.http import Http404
|
||||
|
||||
from rest_framework import generics
|
||||
from rest_framework.permissions import IsAuthenticated
|
||||
|
||||
from greenmine.wiki.serializers import WikiPageSerializer, WikiPageAttachmentSerializer
|
||||
from greenmine.wiki.models import WikiPage, WikiPageAttachment
|
||||
from greenmine.wiki.permissions import WikiPageDetailPermission, WikiPageAttachmentDetailPermission
|
||||
|
||||
from . import models
|
||||
from . import serializers
|
||||
from . import permissions
|
||||
|
||||
|
||||
class WikiPageList(generics.ListCreateAPIView):
|
||||
model = WikiPage
|
||||
serializer_class = WikiPageSerializer
|
||||
model = models.WikiPage
|
||||
serializer_class = serializers.WikiPageSerializer
|
||||
permission_classes = (IsAuthenticated,)
|
||||
filter_fields = ["project"]
|
||||
|
||||
def get_queryset(self):
|
||||
return self.model.objects.filter(project__members=self.request.user)
|
||||
qs = super(WikiPageList, self).get_queryset()
|
||||
return qs.filter(project__members=self.request.user)
|
||||
|
||||
def pre_save(self, obj):
|
||||
obj.owner = self.request.user
|
||||
|
||||
|
||||
class WikiPageDetail(generics.RetrieveUpdateDestroyAPIView):
|
||||
model = WikiPage
|
||||
serializer_class = WikiPageSerializer
|
||||
permission_classes = (WikiPageDetailPermission,)
|
||||
model = models.WikiPage
|
||||
serializer_class = serializers.WikiPageSerializer
|
||||
permission_classes = (IsAuthenticated, permissions.WikiPageDetailPermission,)
|
||||
|
||||
def get_object(self, queryset=None):
|
||||
if queryset is None:
|
||||
|
@ -42,15 +47,15 @@ class WikiPageDetail(generics.RetrieveUpdateDestroyAPIView):
|
|||
return obj
|
||||
|
||||
|
||||
class WikiPageAttachmentList(generics.ListCreateAPIView):
|
||||
model = WikiPageAttachment
|
||||
serializer_class = WikiPageAttachmentSerializer
|
||||
|
||||
def get_queryset(self):
|
||||
return self.model.objects.filter(wikipage__project__members=self.request.user)
|
||||
|
||||
|
||||
class WikiPageAttachmentDetail(generics.RetrieveUpdateDestroyAPIView):
|
||||
model = WikiPageAttachment
|
||||
serializer_class = WikiPageAttachmentSerializer
|
||||
permission_classes = (WikiPageAttachmentDetailPermission,)
|
||||
#class WikiPageAttachmentList(generics.ListCreateAPIView):
|
||||
# model = WikiPageAttachment
|
||||
# serializer_class = WikiPageAttachmentSerializer
|
||||
#
|
||||
# def get_queryset(self):
|
||||
# return self.model.objects.filter(wikipage__project__members=self.request.user)
|
||||
#
|
||||
#
|
||||
#class WikiPageAttachmentDetail(generics.RetrieveUpdateDestroyAPIView):
|
||||
# model = WikiPageAttachment
|
||||
# serializer_class = WikiPageAttachmentSerializer
|
||||
# permission_classes = (WikiPageAttachmentDetailPermission,)
|
||||
|
|
|
@ -2,13 +2,11 @@
|
|||
|
||||
from django.conf.urls import patterns, url
|
||||
from rest_framework.urlpatterns import format_suffix_patterns
|
||||
|
||||
from greenmine.wiki import api
|
||||
|
||||
|
||||
urlpatterns = format_suffix_patterns(patterns('',
|
||||
url(r'^pages/$', api.WikiPageList.as_view(), name='wiki-page-list'),
|
||||
url(r'^pages/(?P<projectid>\d+)-(?P<slug>[\w\-\d]+)/$', api.WikiPageDetail.as_view(), name='wiki-page-detail'),
|
||||
url(r'^pages$', api.WikiPageList.as_view(), name='wiki-page-list'),
|
||||
url(r'^pages/(?P<projectid>\d+)-(?P<slug>[\w\-\d]+)$', api.WikiPageDetail.as_view(), name='wiki-page-detail'),
|
||||
#url(r'^wiki_page_attachments/$', api.WikiPageAttachmentList.as_view(), name='wiki-page-attachment-list'),
|
||||
#url(r'^wiki_page_attachments/(?P<pk>[0-9]+)/$', api.WikiPageAttachmentDetail.as_view(), name='wiki-page-attachment-detail'),
|
||||
))
|
||||
|
|
Loading…
Reference in New Issue