Api urls refactor.

remotes/origin/enhancement/email-actions
Andrey Antukh 2013-04-08 13:43:00 +02:00
parent bc4aa2cb4f
commit 14a68c207e
5 changed files with 37 additions and 37 deletions

View File

@ -26,21 +26,20 @@ class ApiRoot(APIView):
'projects': reverse('project-list', request=request, format=format),
'milestones': reverse('milestone-list', request=request, format=format),
'user-stories': reverse('user-story-list', request=request, format=format),
'attachments': reverse('attachment-list', request=request, format=format),
'tasks': reverse('task-list', request=request, format=format),
'issues': reverse('issue-list', request=request, format=format),
'user-stories/statuses': reverse('user-story-status-list', request=request, format=format),
'user-stories/points': reverse('points-list', request=request, format=format),
'issues/attachments': reverse('issues-attachment-list', request=request, format=format),
'issues/statuses': reverse('issues-status-list', request=request, format=format),
'issues/types': reverse('issues-type-list', request=request, format=format),
'issues': reverse('issues-list', request=request, format=format),
'tasks': reverse('tasks-list', request=request, format=format),
'tasks/statuses': reverse('tasks-status-list', request=request, format=format),
'severities': reverse('severity-list', request=request, format=format),
'issue-status': reverse('issue-status-list', request=request, format=format),
'task-status': reverse('task-status-list', request=request, format=format),
'user-story-status': reverse('user-story-status-list', request=request, format=format),
'priorities': reverse('priority-list', request=request, format=format),
'issue-types': reverse('issue-type-list', request=request, format=format),
'points': reverse('points-list', request=request, format=format),
'documents': reverse('document-list', request=request, format=format),
'questions': reverse('question-list', request=request, format=format),
'question_responses': reverse('question-response-list', request=request, format=format),
'wiki_pages': reverse('wiki-page-list', request=request, format=format),
'wiki_page_attachments': reverse('wiki-page-attachment-list', request=request, format=format),
'wiki/pages': reverse('wiki-page-list', request=request, format=format),
'users': reverse('user-list', request=request, format=format),
})

View File

@ -100,13 +100,14 @@ class UserStoryDetail(generics.RetrieveUpdateDestroyAPIView):
permission_classes = (IsAuthenticated, UserStoryDetailPermission,)
class AttachmentList(generics.ListCreateAPIView):
class IssuesAttachmentList(generics.ListCreateAPIView):
model = Attachment
serializer_class = AttachmentSerializer
permission_classes = (IsAuthenticated,)
def get_queryset(self):
return self.model.objects.filter(project__members=self.request.user)
return super(IssueAttachmentList, self).get_queryset()\
.filter(project__members=self.request.user)
def pre_save(self, obj):
obj.owner = self.request.user

View File

@ -51,7 +51,7 @@ class MilestoneSerializer(serializers.ModelSerializer):
class AttachmentSerializer(serializers.ModelSerializer):
class Meta:
model = Attachment
fields = ()
fields = ('id', 'project', 'owner', 'attached_file', 'created_date',)
class TaskSerializer(serializers.ModelSerializer):

View File

@ -1,3 +1,5 @@
# -*- coding: utf-8 -*-
from django.conf.urls import patterns, url
from rest_framework.urlpatterns import format_suffix_patterns
@ -8,29 +10,27 @@ urlpatterns = format_suffix_patterns(patterns('',
url(r'^projects/(?P<pk>[0-9]+)/$', api.ProjectDetail.as_view(), name='project-detail'),
url(r'^milestones/$', api.MilestoneList.as_view(), name='milestone-list'),
url(r'^milestones/(?P<pk>[0-9]+)/$', api.MilestoneDetail.as_view(), name='milestone-detail'),
url(r'^user_stories/$', api.UserStoryList.as_view(), name='user-story-list'),
url(r'^user_stories/(?P<pk>[0-9]+)/$', api.UserStoryDetail.as_view(), name='user-story-detail'),
url(r'^attachments/$', api.AttachmentList.as_view(), name='attachment-list'),
url(r'^attachments/(?P<pk>[0-9]+)/$', api.AttachmentDetail.as_view(), name='attachment-detail'),
url(r'^issues/$', api.IssueList.as_view(), name='issue-list'),
url(r'^issues/(?P<pk>[0-9]+)/$', api.IssueDetail.as_view(), name='issue-detail'),
url(r'^tasks/$', api.TaskList.as_view(), name='task-list'),
url(r'^tasks/(?P<pk>[0-9]+)/$', api.TaskDetail.as_view(), name='task-detail'),
url(r'^issues/$', api.IssueList.as_view(), name='issue-list'),
url(r'^issues/(?P<pk>[0-9]+)/$', api.IssueDetail.as_view(), name='issue-detail'),
url(r'^user-stories/$', api.UserStoryList.as_view(), name='user-story-list'),
url(r'^user-stories/(?P<pk>[0-9]+)/$', api.UserStoryDetail.as_view(), name='user-story-detail'),
url(r'^user-stories/points/$', api.PointsList.as_view(), name='points-list'),
url(r'^user-stories/points/(?P<pk>[0-9]+)/$', api.PointsDetail.as_view(), name='points-detail'),
url(r'^user-stories/statuses/$', api.UserStoryStatusList.as_view(), name='user-story-status-list'),
url(r'^user-stories/statuses/(?P<pk>[0-9]+)/$', api.UserStoryStatusDetail.as_view(), name='user-story-status-detail'),
url(r'^issues/$', api.IssueList.as_view(), name='issues-list'),
url(r'^issues/(?P<pk>[0-9]+)/$', api.IssueDetail.as_view(), name='issues-detail'),
url(r'^issues/attachments/$', api.IssuesAttachmentList.as_view(), name='issues-attachment-list'),
url(r'^issues/attachments/(?P<pk>[0-9]+)/$', api.AttachmentDetail.as_view(), name='issues-attachment-detail'),
url(r'^issues/statuses/$', api.IssueStatusList.as_view(), name='issues-status-list'),
url(r'^issues/statuses/(?P<pk>[0-9]+)/$', api.IssueStatusDetail.as_view(), name='issues-status-detail'),
url(r'^issues/types/$', api.IssueTypeList.as_view(), name='issues-type-list'),
url(r'^issues/types/(?P<pk>[0-9]+)/$', api.IssueTypeDetail.as_view(), name='issues-type-detail'),
url(r'^tasks/$', api.TaskList.as_view(), name='tasks-list'),
url(r'^tasks/(?P<pk>[0-9]+)/$', api.TaskDetail.as_view(), name='tasks-detail'),
url(r'^severities/$', api.SeverityList.as_view(), name='severity-list'),
url(r'^severities/(?P<pk>[0-9]+)/$', api.SeverityDetail.as_view(), name='severity-detail'),
url(r'^issue_status/$', api.IssueStatusList.as_view(), name='issue-status-list'),
url(r'^issue_status/(?P<pk>[0-9]+)/$', api.IssueStatusDetail.as_view(), name='issue-status-detail'),
url(r'^task_status/$', api.TaskStatusList.as_view(), name='task-status-list'),
url(r'^task_status/(?P<pk>[0-9]+)/$', api.TaskStatusDetail.as_view(), name='task-status-detail'),
url(r'^user_story_status/$', api.UserStoryStatusList.as_view(), name='user-story-status-list'),
url(r'^user_story_status/(?P<pk>[0-9]+)/$', api.UserStoryStatusDetail.as_view(), name='user-story-status-detail'),
url(r'^tasks/statuses/$', api.TaskStatusList.as_view(), name='tasks-status-list'),
url(r'^tasks/statuses/(?P<pk>[0-9]+)/$', api.TaskStatusDetail.as_view(), name='tasks-status-detail'),
url(r'^priorities/$', api.PriorityList.as_view(), name='priority-list'),
url(r'^priorities/(?P<pk>[0-9]+)/$', api.PriorityDetail.as_view(), name='priority-detail'),
url(r'^issue_types/$', api.IssueTypeList.as_view(), name='issue-type-list'),
url(r'^issue_types/(?P<pk>[0-9]+)/$', api.IssueTypeDetail.as_view(), name='issue-type-detail'),
url(r'^points/$', api.PointsList.as_view(), name='points-list'),
url(r'^points/(?P<pk>[0-9]+)/$', api.PointsDetail.as_view(), name='points-detail'),
))

View File

@ -4,9 +4,9 @@ from rest_framework.urlpatterns import format_suffix_patterns
from greenmine.wiki import api
urlpatterns = format_suffix_patterns(patterns('',
url(r'^wiki_pages/$', api.WikiPageList.as_view(), name='wiki-page-list'),
url(r'^wiki_pages/(?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'),
url(r'^wiki/pages/$', api.WikiPageList.as_view(), name='wiki-page-list'),
url(r'^wiki/pages/(?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'),
))