aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarkotibold2011-06-25 16:38:16 +0200
committermarkotibold2011-06-25 16:38:16 +0200
commitbae21b14c93e458014107a007e894e93a181bd0e (patch)
tree88559565b96c67690379f42ba6175434bb37191f
parentddd36206bc7a403b2ba43de7b4c43d5bf6466399 (diff)
downloaddjango-rest-framework-bae21b14c93e458014107a007e894e93a181bd0e.tar.bz2
added a container view for the permissions example
-rw-r--r--examples/permissionsexample/urls.py6
-rw-r--r--examples/permissionsexample/views.py20
-rw-r--r--examples/sandbox/views.py3
3 files changed, 24 insertions, 5 deletions
diff --git a/examples/permissionsexample/urls.py b/examples/permissionsexample/urls.py
index e3b0ffbd..c421c7cc 100644
--- a/examples/permissionsexample/urls.py
+++ b/examples/permissionsexample/urls.py
@@ -1,6 +1,8 @@
from django.conf.urls.defaults import patterns, url
-from permissionsexample.views import ThrottlingExampleView
+from permissionsexample.views import PermissionsExampleView, ThrottlingExampleView, LoggedinView
urlpatterns = patterns('',
- url(r'^$', ThrottlingExampleView.as_view(), name='throttled-resource'),
+ url(r'^$', PermissionsExampleView.as_view(), name='permissions-example'),
+ url(r'^throttling$', ThrottlingExampleView.as_view(), name='throttled-resource'),
+ url(r'^loggedin$', LoggedinView.as_view(), name='loggedin-resource'),
)
diff --git a/examples/permissionsexample/views.py b/examples/permissionsexample/views.py
index 20e7cba7..ca456191 100644
--- a/examples/permissionsexample/views.py
+++ b/examples/permissionsexample/views.py
@@ -1,6 +1,16 @@
from djangorestframework.views import View
-from djangorestframework.permissions import PerUserThrottling
+from djangorestframework.permissions import PerUserThrottling, IsAuthenticated
+from django.core.urlresolvers import reverse
+class PermissionsExampleView(View):
+ """
+ A container view for permissions examples.
+ """
+
+ def get(self, request):
+ return [{'name': 'Throttling Example', 'url': reverse('throttled-resource')},
+ {'name': 'Logged in example', 'url': reverse('loggedin-resource')},]
+
class ThrottlingExampleView(View):
"""
@@ -17,4 +27,10 @@ class ThrottlingExampleView(View):
"""
Handle GET requests.
"""
- return "Successful response to GET request because throttle is not yet active." \ No newline at end of file
+ return "Successful response to GET request because throttle is not yet active."
+
+class LoggedinView(View):
+
+ permissions = (IsAuthenticated, )
+ def get(self, request):
+ return 'Logged in or not?' \ No newline at end of file
diff --git a/examples/sandbox/views.py b/examples/sandbox/views.py
index 1e326f43..f8d87a0b 100644
--- a/examples/sandbox/views.py
+++ b/examples/sandbox/views.py
@@ -22,6 +22,7 @@ class Sandbox(View):
4. A generic object store API.
5. A code highlighting API.
6. A blog posts and comments API.
+ 7. A basic example using permissions. You can login with **'test', 'test'.**
Please feel free to browse, create, edit and delete the resources in these examples."""
@@ -32,5 +33,5 @@ class Sandbox(View):
{'name': 'Object store API', 'url': reverse('object-store-root')},
{'name': 'Code highlighting API', 'url': reverse('pygments-root')},
{'name': 'Blog posts API', 'url': reverse('blog-posts-root')},
- {'name': 'Permissions example', 'url': reverse('throttled-resource')}
+ {'name': 'Permissions example', 'url': reverse('permissions-example')}
]