Migrating questions app to rest_framework
parent
e17a902e56
commit
6d72a69dc8
|
@ -33,6 +33,8 @@ class ApiRoot(APIView):
|
|||
'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),
|
||||
})
|
||||
|
||||
|
||||
|
@ -61,9 +63,7 @@ class Login(APIView):
|
|||
'colorize_tags': request.user.colorize_tags,
|
||||
}))
|
||||
|
||||
return http.HttpResponse(JSONRenderer().render(return_data.data),
|
||||
content_type="application/json",
|
||||
status=201)
|
||||
return Response(return_data.data)
|
||||
except User.DoesNotExist:
|
||||
pass
|
||||
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
from rest_framework import serializers
|
||||
|
||||
from greenmine.documents.models import Document
|
||||
|
||||
class DocumentSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Document
|
||||
fields = ()
|
|
@ -0,0 +1,10 @@
|
|||
from django.conf.urls import patterns, url
|
||||
from rest_framework.urlpatterns import format_suffix_patterns
|
||||
|
||||
from greenmine.documents import api
|
||||
|
||||
urlpatterns = format_suffix_patterns(patterns('',
|
||||
url(r'^documents/$', api.DocumentList.as_view(), name='document-list'),
|
||||
url(r'^documents/(?P<pk>[0-9]+)/$', api.DocumentDetail.as_view(), name='document-detail'),
|
||||
))
|
||||
|
|
@ -1,22 +1,25 @@
|
|||
# myapp/api.py
|
||||
from tastypie.resources import ModelResource
|
||||
from tastypie.authentication import SessionAuthentication
|
||||
from tastypie.authorization import DjangoAuthorization
|
||||
|
||||
from rest_framework import generics
|
||||
|
||||
from greenmine.questions.serializers import QuestionSerializer, QuestionResponseSerializer
|
||||
from greenmine.questions.models import Question, QuestionResponse
|
||||
|
||||
|
||||
class QuestionResource(ModelResource):
|
||||
class Meta:
|
||||
queryset = Question.objects.all()
|
||||
resource_name = 'question'
|
||||
authentication = SessionAuthentication()
|
||||
authorization = DjangoAuthorization()
|
||||
class QuestionList(generics.ListCreateAPIView):
|
||||
model = Question
|
||||
serializer_class = QuestionSerializer
|
||||
|
||||
|
||||
class QuestionResponseResource(ModelResource):
|
||||
class Meta:
|
||||
queryset = QuestionResponse.objects.all()
|
||||
resource_name = 'questionresponse'
|
||||
authentication = SessionAuthentication()
|
||||
authorization = DjangoAuthorization()
|
||||
class QuestionDetail(generics.RetrieveUpdateDestroyAPIView):
|
||||
model = Question
|
||||
serializer_class = QuestionSerializer
|
||||
|
||||
|
||||
class QuestionResponseList(generics.ListCreateAPIView):
|
||||
model = QuestionResponse
|
||||
serializer_class = QuestionResponseSerializer
|
||||
|
||||
|
||||
class QuestionResponseDetail(generics.RetrieveUpdateDestroyAPIView):
|
||||
model = QuestionResponse
|
||||
serializer_class = QuestionResponseSerializer
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
from rest_framework import serializers
|
||||
|
||||
from greenmine.questions.models import Question, QuestionResponse
|
||||
|
||||
|
||||
class QuestionSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Question
|
||||
fields = ()
|
||||
|
||||
|
||||
class QuestionResponseSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = QuestionResponse
|
||||
fields = ()
|
|
@ -0,0 +1,12 @@
|
|||
from django.conf.urls import patterns, url
|
||||
from rest_framework.urlpatterns import format_suffix_patterns
|
||||
|
||||
from greenmine.questions import api
|
||||
|
||||
urlpatterns = format_suffix_patterns(patterns('',
|
||||
url(r'^questions/$', api.QuestionList.as_view(), name='question-list'),
|
||||
url(r'^questions/(?P<pk>[0-9]+)/$', api.QuestionDetail.as_view(), name='question-detail'),
|
||||
url(r'^question_responses/$', api.QuestionResponseList.as_view(), name='question-response-list'),
|
||||
url(r'^question_responses/(?P<pk>[0-9]+)/$', api.QuestionResponseDetail.as_view(), name='question-response-detail'),
|
||||
))
|
||||
|
|
@ -9,6 +9,7 @@ urlpatterns = patterns('',
|
|||
url(r'^api/', include('greenmine.base.urls')),
|
||||
url(r'^api/scrum/', include('greenmine.scrum.urls')),
|
||||
url(r'^api/documents/', include('greenmine.documents.urls')),
|
||||
url(r'^api/questions/', include('greenmine.questions.urls')),
|
||||
url(r'^admin/', include(admin.site.urls)),
|
||||
url(r'^grappelli/', include('grappelli.urls')),
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue