Update examples to use the new custom `reverse()'

This fixes #167 except for the docs
This commit is contained in:
Daniel Izquierdo 2012-02-20 19:28:50 +09:00
parent fbf03c78d8
commit 8bc2fc54c5
9 changed files with 28 additions and 30 deletions

View File

@ -1,5 +1,5 @@
from django.core.urlresolvers import reverse
from djangorestframework.resources import ModelResource from djangorestframework.resources import ModelResource
from djangorestframework.utils import reverse
from blogpost.models import BlogPost, Comment from blogpost.models import BlogPost, Comment
@ -12,7 +12,7 @@ class BlogPostResource(ModelResource):
ordering = ('-created',) ordering = ('-created',)
def comments(self, instance): def comments(self, instance):
return reverse('comments', kwargs={'blogpost': instance.key}) return reverse('comments', request, kwargs={'blogpost': instance.key})
class CommentResource(ModelResource): class CommentResource(ModelResource):
@ -24,4 +24,4 @@ class CommentResource(ModelResource):
ordering = ('-created',) ordering = ('-created',)
def blogpost(self, instance): def blogpost(self, instance):
return reverse('blog-post', kwargs={'key': instance.blogpost.key}) return reverse('blog-post', request, kwargs={'key': instance.blogpost.key})

View File

@ -1,12 +1,11 @@
"""Test a range of REST API usage of the example application. """Test a range of REST API usage of the example application.
""" """
from django.core.urlresolvers import reverse
from django.test import TestCase from django.test import TestCase
from django.core.urlresolvers import reverse
from django.utils import simplejson as json from django.utils import simplejson as json
from djangorestframework.compat import RequestFactory from djangorestframework.compat import RequestFactory
from djangorestframework.utils import reverse
from djangorestframework.views import InstanceModelView, ListOrCreateModelView from djangorestframework.views import InstanceModelView, ListOrCreateModelView
from blogpost import models, urls from blogpost import models, urls

View File

@ -2,9 +2,9 @@ from djangorestframework.compat import View # Use Django 1.3's django.views.gen
from djangorestframework.mixins import ResponseMixin from djangorestframework.mixins import ResponseMixin
from djangorestframework.renderers import DEFAULT_RENDERERS from djangorestframework.renderers import DEFAULT_RENDERERS
from djangorestframework.response import Response from djangorestframework.response import Response
from djangorestframework.utils import reverse
from django.conf.urls.defaults import patterns, url from django.conf.urls.defaults import patterns, url
from django.core.urlresolvers import reverse
class ExampleView(ResponseMixin, View): class ExampleView(ResponseMixin, View):
@ -14,7 +14,7 @@ class ExampleView(ResponseMixin, View):
def get(self, request): def get(self, request):
response = Response({'description': 'Some example content', response = Response({'description': 'Some example content',
'url': reverse('mixin-view')}, status=200) 'url': reverse('mixin-view', request)}, status=200)
self.response = self.prepare_response(response) self.response = self.prepare_response(response)
return self.response return self.response

View File

@ -1,6 +1,6 @@
from django.conf import settings from django.conf import settings
from django.core.urlresolvers import reverse
from djangorestframework.utils import reverse
from djangorestframework.views import View from djangorestframework.views import View
from djangorestframework.response import Response from djangorestframework.response import Response
from djangorestframework import status from djangorestframework import status
@ -41,7 +41,7 @@ class ObjectStoreRoot(View):
filepaths = [os.path.join(OBJECT_STORE_DIR, file) for file in os.listdir(OBJECT_STORE_DIR) if not file.startswith('.')] filepaths = [os.path.join(OBJECT_STORE_DIR, file) for file in os.listdir(OBJECT_STORE_DIR) if not file.startswith('.')]
ctime_sorted_basenames = [item[0] for item in sorted([(os.path.basename(path), os.path.getctime(path)) for path in filepaths], ctime_sorted_basenames = [item[0] for item in sorted([(os.path.basename(path), os.path.getctime(path)) for path in filepaths],
key=operator.itemgetter(1), reverse=True)] key=operator.itemgetter(1), reverse=True)]
return Response([reverse('stored-object', kwargs={'key':key}) for key in ctime_sorted_basenames]) return Response([reverse('stored-object', request, kwargs={'key':key}) for key in ctime_sorted_basenames])
def post(self, request): def post(self, request):
""" """
@ -51,7 +51,7 @@ class ObjectStoreRoot(View):
pathname = os.path.join(OBJECT_STORE_DIR, key) pathname = os.path.join(OBJECT_STORE_DIR, key)
pickle.dump(self.CONTENT, open(pathname, 'wb')) pickle.dump(self.CONTENT, open(pathname, 'wb'))
remove_oldest_files(OBJECT_STORE_DIR, MAX_FILES) remove_oldest_files(OBJECT_STORE_DIR, MAX_FILES)
self.headers['Location'] = reverse('stored-object', kwargs={'key':key}) self.headers['Location'] = reverse('stored-object', request, kwargs={'key':key})
return Response(self.CONTENT, status=status.HTTP_201_CREATED) return Response(self.CONTENT, status=status.HTTP_201_CREATED)

View File

@ -1,7 +1,7 @@
from djangorestframework.views import View from djangorestframework.views import View
from djangorestframework.response import Response from djangorestframework.response import Response
from djangorestframework.permissions import PerUserThrottling, IsAuthenticated from djangorestframework.permissions import PerUserThrottling, IsAuthenticated
from django.core.urlresolvers import reverse from djangorestframework.utils import reverse
class PermissionsExampleView(View): class PermissionsExampleView(View):
@ -13,11 +13,11 @@ class PermissionsExampleView(View):
return Response([ return Response([
{ {
'name': 'Throttling Example', 'name': 'Throttling Example',
'url': reverse('throttled-resource') 'url': reverse('throttled-resource', request)
}, },
{ {
'name': 'Logged in example', 'name': 'Logged in example',
'url': reverse('loggedin-resource') 'url': reverse('loggedin-resource', request)
}, },
]) ])

View File

@ -1,10 +1,10 @@
from __future__ import with_statement # for python 2.5 from __future__ import with_statement # for python 2.5
from django.conf import settings from django.conf import settings
from django.core.urlresolvers import reverse
from djangorestframework.resources import FormResource from djangorestframework.resources import FormResource
from djangorestframework.response import Response from djangorestframework.response import Response
from djangorestframework.renderers import BaseRenderer from djangorestframework.renderers import BaseRenderer
from djangorestframework.utils import reverse
from djangorestframework.views import View from djangorestframework.views import View
from djangorestframework import status from djangorestframework import status
@ -61,7 +61,7 @@ class PygmentsRoot(View):
Return a list of all currently existing snippets. Return a list of all currently existing snippets.
""" """
unique_ids = [os.path.split(f)[1] for f in list_dir_sorted_by_ctime(HIGHLIGHTED_CODE_DIR)] unique_ids = [os.path.split(f)[1] for f in list_dir_sorted_by_ctime(HIGHLIGHTED_CODE_DIR)]
return Response([reverse('pygments-instance', args=[unique_id]) for unique_id in unique_ids]) return Response([reverse('pygments-instance', request, args=[unique_id]) for unique_id in unique_ids])
def post(self, request): def post(self, request):
""" """
@ -81,7 +81,7 @@ class PygmentsRoot(View):
remove_oldest_files(HIGHLIGHTED_CODE_DIR, MAX_FILES) remove_oldest_files(HIGHLIGHTED_CODE_DIR, MAX_FILES)
self.headers['Location'] = reverse('pygments-instance', args=[unique_id]) self.headers['Location'] = reverse('pygments-instance', request, args=[unique_id])
return Response(status=status.HTTP_201_CREATED) return Response(status=status.HTTP_201_CREATED)

View File

@ -1,8 +1,8 @@
from djangorestframework.compat import View from djangorestframework.compat import View
from django.http import HttpResponse from django.http import HttpResponse
from django.core.urlresolvers import reverse
from djangorestframework.mixins import RequestMixin from djangorestframework.mixins import RequestMixin
from djangorestframework.utils import reverse
from djangorestframework.views import View as DRFView from djangorestframework.views import View as DRFView
from djangorestframework import parsers from djangorestframework import parsers
from djangorestframework.response import Response from djangorestframework.response import Response
@ -14,7 +14,7 @@ class RequestExampleView(DRFView):
""" """
def get(self, request): def get(self, request):
return Response([{'name': 'request.DATA Example', 'url': reverse('request-content')},]) return Response([{'name': 'request.DATA Example', 'url': reverse('request-content', request)},])
class MyBaseViewUsingEnhancedRequest(RequestMixin, View): class MyBaseViewUsingEnhancedRequest(RequestMixin, View):

View File

@ -1,5 +1,4 @@
from django.core.urlresolvers import reverse from djangorestframework.utils import reverse
from djangorestframework.views import View from djangorestframework.views import View
from djangorestframework.response import Response from djangorestframework.response import Response
from djangorestframework import status from djangorestframework import status
@ -16,7 +15,7 @@ class ExampleView(View):
""" """
Handle GET requests, returning a list of URLs pointing to 3 other views. Handle GET requests, returning a list of URLs pointing to 3 other views.
""" """
return Response({"Some other resources": [reverse('another-example', kwargs={'num':num}) for num in range(3)]}) return Response({"Some other resources": [reverse('another-example', request, kwargs={'num':num}) for num in range(3)]})
class AnotherExampleView(View): class AnotherExampleView(View):

View File

@ -1,6 +1,6 @@
"""The root view for the examples provided with Django REST framework""" """The root view for the examples provided with Django REST framework"""
from django.core.urlresolvers import reverse from djangorestframework.utils import reverse
from djangorestframework.views import View from djangorestframework.views import View
from djangorestframework.response import Response from djangorestframework.response import Response
@ -29,12 +29,12 @@ class Sandbox(View):
Please feel free to browse, create, edit and delete the resources in these examples.""" Please feel free to browse, create, edit and delete the resources in these examples."""
def get(self, request): def get(self, request):
return Response([{'name': 'Simple Resource example', 'url': reverse('example-resource')}, return Response([{'name': 'Simple Resource example', 'url': reverse('example-resource', request)},
{'name': 'Simple ModelResource example', 'url': reverse('model-resource-root')}, {'name': 'Simple ModelResource example', 'url': reverse('model-resource-root', request)},
{'name': 'Simple Mixin-only example', 'url': reverse('mixin-view')}, {'name': 'Simple Mixin-only example', 'url': reverse('mixin-view', request)},
{'name': 'Object store API', 'url': reverse('object-store-root')}, {'name': 'Object store API', 'url': reverse('object-store-root', request)},
{'name': 'Code highlighting API', 'url': reverse('pygments-root')}, {'name': 'Code highlighting API', 'url': reverse('pygments-root', request)},
{'name': 'Blog posts API', 'url': reverse('blog-posts-root')}, {'name': 'Blog posts API', 'url': reverse('blog-posts-root', request)},
{'name': 'Permissions example', 'url': reverse('permissions-example')}, {'name': 'Permissions example', 'url': reverse('permissions-example', request)},
{'name': 'Simple request mixin example', 'url': reverse('request-example')} {'name': 'Simple request mixin example', 'url': reverse('request-example', request)}
]) ])