diff options
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/permissionsexample/fixtures/initial_data.yaml | 12 | ||||
| -rw-r--r-- | examples/permissionsexample/models.py | 1 | ||||
| -rw-r--r-- | examples/permissionsexample/urls.py | 6 | ||||
| -rw-r--r-- | examples/permissionsexample/views.py | 22 | ||||
| -rw-r--r-- | examples/requirements.txt | 1 | ||||
| -rw-r--r-- | examples/sandbox/views.py | 3 | ||||
| -rw-r--r-- | examples/settings.py | 7 | 
7 files changed, 47 insertions, 5 deletions
| diff --git a/examples/permissionsexample/fixtures/initial_data.yaml b/examples/permissionsexample/fixtures/initial_data.yaml new file mode 100644 index 00000000..22276ec2 --- /dev/null +++ b/examples/permissionsexample/fixtures/initial_data.yaml @@ -0,0 +1,12 @@ +- fields: +    first_name: '' +    groups: [] +    is_active: true +    is_staff: true +    is_superuser: true +    last_name: '' +    password: sha1$b3dff$671b4ab97f2714446da32670d27576614e176758 +    user_permissions: [] +    username: test +  model: auth.user +  pk: 2 diff --git a/examples/permissionsexample/models.py b/examples/permissionsexample/models.py new file mode 100644 index 00000000..232085ad --- /dev/null +++ b/examples/permissionsexample/models.py @@ -0,0 +1 @@ +#for fixture loading
\ No newline at end of file diff --git a/examples/permissionsexample/urls.py b/examples/permissionsexample/urls.py index d17f5159..33cb9b5f 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, LoggedInExampleView  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$', LoggedInExampleView.as_view(), name='loggedin-resource'),  ) diff --git a/examples/permissionsexample/views.py b/examples/permissionsexample/views.py index 20e7cba7..f95c2c84 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,12 @@ 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 LoggedInExampleView(View): +    """ +    You can login with **'test', 'test'.**  +    """ +    permissions = (IsAuthenticated, ) +    def get(self, request): +        return 'Logged in or not?'
\ No newline at end of file diff --git a/examples/requirements.txt b/examples/requirements.txt index 0bcd8d43..70371574 100644 --- a/examples/requirements.txt +++ b/examples/requirements.txt @@ -4,3 +4,4 @@  Pygments==1.4  Markdown==2.0.3 + diff --git a/examples/sandbox/views.py b/examples/sandbox/views.py index 1e326f43..29f2e3ce 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.      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')}                  ] diff --git a/examples/settings.py b/examples/settings.py index 1537c5f8..2eab2cfa 100644 --- a/examples/settings.py +++ b/examples/settings.py @@ -89,6 +89,12 @@ TEMPLATE_DIRS = (      # Don't forget to use absolute paths, not relative paths.  ) +# for loading initial data +##SERIALIZATION_MODULES = {  +  #  'yml': "django.core.serializers.pyyaml" + +#}  +  INSTALLED_APPS = (      'django.contrib.auth', @@ -104,6 +110,7 @@ INSTALLED_APPS = (      'objectstore',      'pygments_api',      'blogpost', +    'permissionsexample',  )  import os | 
