Add more resources.

remotes/origin/enhancement/email-actions
Andrey Antukh 2013-03-26 18:05:19 +01:00
parent dc526ba67c
commit fa0538bcd1
2 changed files with 75 additions and 8 deletions

View File

@ -2,14 +2,14 @@
from tastypie.resources import ModelResource from tastypie.resources import ModelResource
from tastypie.authentication import SessionAuthentication from tastypie.authentication import SessionAuthentication
from tastypie.authorization import DjangoAuthorization from tastypie.authorization import DjangoAuthorization
from tastypie import fields
from greenmine.scrum.models import Project, \ from greenmine.scrum import models
Milestone, UserStory, Change, ChangeAttachment, Task
class ProjectResource(ModelResource): class ProjectResource(ModelResource):
class Meta: class Meta:
queryset = Project.objects.all() queryset = models.Project.objects.all()
resource_name = 'project' resource_name = 'project'
authentication = SessionAuthentication() authentication = SessionAuthentication()
authorization = DjangoAuthorization() authorization = DjangoAuthorization()
@ -17,7 +17,7 @@ class ProjectResource(ModelResource):
class MilestoneResource(ModelResource): class MilestoneResource(ModelResource):
class Meta: class Meta:
queryset = Milestone.objects.all() queryset = models.Milestone.objects.all()
resource_name = 'milestone' resource_name = 'milestone'
authentication = SessionAuthentication() authentication = SessionAuthentication()
authorization = DjangoAuthorization() authorization = DjangoAuthorization()
@ -25,7 +25,7 @@ class MilestoneResource(ModelResource):
class UserStoryResource(ModelResource): class UserStoryResource(ModelResource):
class Meta: class Meta:
queryset = UserStory.objects.all() queryset = models.UserStory.objects.all()
resource_name = 'userstory' resource_name = 'userstory'
authentication = SessionAuthentication() authentication = SessionAuthentication()
authorization = DjangoAuthorization() authorization = DjangoAuthorization()
@ -33,7 +33,7 @@ class UserStoryResource(ModelResource):
class ChangeResource(ModelResource): class ChangeResource(ModelResource):
class Meta: class Meta:
queryset = Change.objects.all() queryset = models.Change.objects.all()
resource_name = 'change' resource_name = 'change'
authentication = SessionAuthentication() authentication = SessionAuthentication()
authorization = DjangoAuthorization() authorization = DjangoAuthorization()
@ -41,7 +41,7 @@ class ChangeResource(ModelResource):
class ChangeAttachmentResource(ModelResource): class ChangeAttachmentResource(ModelResource):
class Meta: class Meta:
queryset = ChangeAttachment.objects.all() queryset = models.ChangeAttachment.objects.all()
resource_name = 'changeattachment' resource_name = 'changeattachment'
authentication = SessionAuthentication() authentication = SessionAuthentication()
authorization = DjangoAuthorization() authorization = DjangoAuthorization()
@ -49,7 +49,67 @@ class ChangeAttachmentResource(ModelResource):
class TaskResource(ModelResource): class TaskResource(ModelResource):
class Meta: class Meta:
queryset = Task.objects.all() queryset = models.Task.objects.all()
resource_name = 'task' resource_name = 'task'
authentication = SessionAuthentication() authentication = SessionAuthentication()
authorization = DjangoAuthorization() authorization = DjangoAuthorization()
class SeverityResource(ModelResource):
class Meta:
queryset = models.Severity.objects.all()
resource_name = 'choices/severity'
authentication = SessionAuthentication()
authorization = DjangoAuthorization()
class IssueStatusResource(ModelResource):
class Meta:
queryset = models.IssueStatus.objects.all()
resource_name = 'choices/issue-status'
authentication = SessionAuthentication()
authorization = DjangoAuthorization()
from tastypie.constants import ALL, ALL_WITH_RELATIONS
class TaskStatusResource(ModelResource):
project = fields.ForeignKey(ProjectResource, 'project')
class Meta:
queryset = models.TaskStatus.objects.all()
resource_name = 'choices/task-status'
authentication = SessionAuthentication()
authorization = DjangoAuthorization()
filtering = {
"project": ALL_WITH_RELATIONS,
}
class UserStoryStatusResource(ModelResource):
class Meta:
queryset = models.UserStoryStatus.objects.all()
resource_name = 'choices/us-status'
authentication = SessionAuthentication()
authorization = DjangoAuthorization()
class PriorityResource(ModelResource):
class Meta:
queryset = models.Priority.objects.all()
resource_name = 'choices/priority'
authentication = SessionAuthentication()
authorization = DjangoAuthorization()
class IssueTypeResource(ModelResource):
class Meta:
queryset = models.IssueType.objects.all()
resource_name = 'choices/issue-type'
authentication = SessionAuthentication()
authorization = DjangoAuthorization()
class PointsResource(ModelResource):
class Meta:
queryset = models.Points.objects.all()
resource_name = 'choices/story-points'
authentication = SessionAuthentication()
authorization = DjangoAuthorization()

View File

@ -25,6 +25,13 @@ v1_api.register(DocumentResource())
v1_api.register(ProfileResource()) v1_api.register(ProfileResource())
v1_api.register(WikiPageResource()) v1_api.register(WikiPageResource())
v1_api.register(WikiPageAttachmentResource()) v1_api.register(WikiPageAttachmentResource())
v1_api.register(SeverityResource())
v1_api.register(IssueStatusResource())
v1_api.register(TaskStatusResource())
v1_api.register(UserStoryStatusResource())
v1_api.register(PriorityResource())
v1_api.register(IssueTypeResource())
v1_api.register(PointsResource())
urlpatterns = patterns('', urlpatterns = patterns('',
url(r'^api/gm/actions/login/', Login.as_view(), name="login"), url(r'^api/gm/actions/login/', Login.as_view(), name="login"),