mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2024-11-23 03:43:12 +00:00
Add permission for API view
This commit is contained in:
parent
6478a0aed9
commit
0c7e944b07
4 changed files with 29 additions and 2 deletions
17
api/initial_perm.py
Normal file
17
api/initial_perm.py
Normal file
|
@ -0,0 +1,17 @@
|
|||
from django.contrib.contenttypes.models import ContentType
|
||||
from django.contrib.auth.models import Permission
|
||||
from django.conf import settings
|
||||
|
||||
api_content_type, created = ContentType.objects.get_or_create(
|
||||
app_label=settings.API_CONTENT_TYPE_APP_LABEL,
|
||||
model=settings.API_CONTENT_TYPE_MODEL
|
||||
)
|
||||
if created:
|
||||
api_content_type.save()
|
||||
api_permission, created = Permission.objects.get_or_create(
|
||||
name=settings.API_PERMISSION_NAME,
|
||||
content_type=api_content_type,
|
||||
codename=settings.API_PERMISSION_CODENAME
|
||||
)
|
||||
if created:
|
||||
api_permission.save()
|
|
@ -35,3 +35,9 @@ REST_FRAMEWORK = {
|
|||
'api.permissions.DefaultACLPermission',
|
||||
)
|
||||
}
|
||||
|
||||
# API permission settings
|
||||
API_CONTENT_TYPE_APP_LABEL = 'api'
|
||||
API_CONTENT_TYPE_MODEL = 'api'
|
||||
API_PERMISSION_NAME = 'Can use the API'
|
||||
API_PERMISSION_CODENAME = 'use_api'
|
||||
|
|
|
@ -28,6 +28,7 @@ from django.conf.urls import url, include
|
|||
from rest_framework.routers import DefaultRouter
|
||||
|
||||
from . import views
|
||||
from . import initial_perm
|
||||
|
||||
router = DefaultRouter()
|
||||
router.register(r'users', views.UserViewSet)
|
||||
|
|
|
@ -42,6 +42,7 @@ Including another URLconf
|
|||
"""
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.conf import settings
|
||||
from django.conf.urls import include, url
|
||||
from django.contrib import admin
|
||||
from django.contrib.auth import views as auth_views
|
||||
|
@ -70,6 +71,8 @@ urlpatterns = [
|
|||
r'^preferences/',
|
||||
include('preferences.urls', namespace='preferences')
|
||||
),
|
||||
url(r'^api/', include('api.urls', namespace='api')),
|
||||
|
||||
]
|
||||
if 'api' in settings.INSTALLED_APPS:
|
||||
urlpatterns += [
|
||||
url(r'^api/', include('api.urls', namespace='api')),
|
||||
]
|
||||
|
|
Loading…
Reference in a new issue