From 101f3bf2aaeb25083ac9c9dab127859e9d41bc8e Mon Sep 17 00:00:00 2001 From: fbormann Date: Sun, 19 Feb 2017 23:13:39 -0300 Subject: [PATCH] fixed api which was broken when we removed core app from project, serializers for log and users are now working --- amadeus/settings.py | 16 ++++++++++++++++ amadeus/urls.py | 1 + api/__init__.py | 0 api/admin.py | 3 +++ api/apps.py | 5 +++++ api/migrations/__init__.py | 0 api/models.py | 3 +++ api/tests.py | 3 +++ api/urls.py | 17 +++++++++++++++++ api/views.py | 3 +++ log/serializers.py | 7 +++++++ log/views.py | 12 +++++++++++- users/serializers.py | 3 +-- 13 files changed, 70 insertions(+), 3 deletions(-) create mode 100644 api/__init__.py create mode 100644 api/admin.py create mode 100644 api/apps.py create mode 100644 api/migrations/__init__.py create mode 100644 api/models.py create mode 100644 api/tests.py create mode 100644 api/urls.py create mode 100644 api/views.py create mode 100644 log/serializers.py diff --git a/amadeus/settings.py b/amadeus/settings.py index e655a9a..8df9662 100644 --- a/amadeus/settings.py +++ b/amadeus/settings.py @@ -75,6 +75,7 @@ INSTALLED_APPS = [ 'mailsender', 'security', 'themes', + 'api', ] @@ -289,6 +290,21 @@ S3DIRECT_DESTINATIONS = { } +#API CONFIG STARTS +#TELL the rest framework to use a different backend +REST_FRAMEWORK = { + 'DEFAULT_AUTHENTICATION_CLASSES':( + 'oauth2_provider.ext.rest_framework.OAuth2Authentication',), + 'DEFAULT_PERMISSION_CLASSES':( + 'rest_framework.permissions.IsAuthenticated',), + 'PAGE_SIZE': 10, #pagination purposes +} + +OAUTH2_PROVIDER = { + 'SCOPES':{'read':'Read scope', 'write': 'Write scope'} +} +#API CONFIG ENDS + # FILE UPLOAD MAX_UPLOAD_SIZE = 10485760 diff --git a/amadeus/urls.py b/amadeus/urls.py index 2445d0a..07c34c9 100644 --- a/amadeus/urls.py +++ b/amadeus/urls.py @@ -25,6 +25,7 @@ urlpatterns = [ url(r'^users/', include('users.urls', namespace = 'users')), url(r'^admin/', admin.site.urls), url(r'^$', index, name = 'home'), + url(r'api/', include('api.urls', namespace = 'api')), url(r'^categories/', include('categories.urls', namespace = 'categories')), url(r'^subjects/', include('subjects.urls', namespace = 'subjects')), url(r'^groups/', include('students_group.urls', namespace = 'groups')), diff --git a/api/__init__.py b/api/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/api/__init__.py diff --git a/api/admin.py b/api/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/api/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/api/apps.py b/api/apps.py new file mode 100644 index 0000000..d87006d --- /dev/null +++ b/api/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class ApiConfig(AppConfig): + name = 'api' diff --git a/api/migrations/__init__.py b/api/migrations/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/api/migrations/__init__.py diff --git a/api/models.py b/api/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/api/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/api/tests.py b/api/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/api/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/api/urls.py b/api/urls.py new file mode 100644 index 0000000..abba0dc --- /dev/null +++ b/api/urls.py @@ -0,0 +1,17 @@ +from django.conf.urls import url, include + +# ========== API IMPORTS ============= # + +from rest_framework import routers + +from users.views import UserViewSet +from log.views import LogViewSet + +router = routers.DefaultRouter() +router.register(r'logs', LogViewSet) +router.register(r'usersapi', UserViewSet) + +urlpatterns = [ + #API REST + url(r'^', include(router.urls)), +] \ No newline at end of file diff --git a/api/views.py b/api/views.py new file mode 100644 index 0000000..91ea44a --- /dev/null +++ b/api/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here. diff --git a/log/serializers.py b/log/serializers.py new file mode 100644 index 0000000..f1f2ebe --- /dev/null +++ b/log/serializers.py @@ -0,0 +1,7 @@ +from rest_framework import serializers +from .models import Log + +class LogSerializer(serializers.ModelSerializer): + class Meta: + model = Log + fields = '__all__' \ No newline at end of file diff --git a/log/views.py b/log/views.py index 91ea44a..ba3c2ef 100644 --- a/log/views.py +++ b/log/views.py @@ -1,3 +1,13 @@ from django.shortcuts import render - +#API IMPORTS +from rest_framework import viewsets +from .serializers import LogSerializer +from rest_framework.permissions import IsAuthenticated, IsAuthenticatedOrReadOnly +from .models import Log # Create your views here. + +#REST API VIEWS +class LogViewSet(viewsets.ModelViewSet): + permission_classes = [IsAuthenticated] + queryset = Log.objects.all() + serializer_class = LogSerializer \ No newline at end of file diff --git a/users/serializers.py b/users/serializers.py index d757ad8..c719bc5 100644 --- a/users/serializers.py +++ b/users/serializers.py @@ -4,6 +4,5 @@ from .models import User class UserSerializer(serializers.ModelSerializer): class Meta: model = User - fields = ('username','email','name','city','state','gender','image','birth_date','phone', - 'cpf','type_profile','titration','year_titration','institution','curriculum','date_created', + fields = ('username','email','image','last_update','date_created','last_name','social_name', 'is_staff','is_active') -- libgit2 0.21.2