Private
Public Access
1
0

sorted permissions for workouts-list

This commit is contained in:
Sander Roosendaal
2016-12-22 15:39:57 +01:00
parent 24de5c681d
commit 56fc3a52d3
6 changed files with 46 additions and 20 deletions

View File

@@ -2,11 +2,11 @@ from django.conf import settings
from django.conf.urls import url, include
from django.contrib.auth.models import User
from models import Workout,Rower
from models import Workout,Rower,StrokeData
from rest_framework import routers, serializers, viewsets,permissions
from rest_framework.urlpatterns import format_suffix_patterns
from rest_framework.permissions import *
from . import views
from django.contrib.auth import views as auth_views
from django.views.generic.base import TemplateView
@@ -15,18 +15,34 @@ from django.conf.urls import (
)
from rowers.permissions import IsOwnerOrNot,IsOwnerOrReadOnly
from rowers.serializers import WorkoutSerializer,RowerSerializer
from rowers.serializers import (
WorkoutSerializer,
RowerSerializer,
StrokeDataSerializer,
)
class WorkoutViewSet(viewsets.ModelViewSet):
queryset = Workout.objects.all().order_by("-date", "-starttime")
model = Workout
#queryset = Workout.objects.all().order_by("-date", "-starttime")
serializer_class = WorkoutSerializer
permission_classes = (IsOwnerOrNot,)
def get_queryset(self):
r = Rower.objects.get(user=self.request.user)
return Workout.objects.filter(user=r).order_by("-date","-starttime")
permission_classes = (
#DjangoModelPermissions,
IsOwnerOrNot,
)
class StrokeDataViewSet(viewsets.ModelViewSet):
serializer_class = StrokeDataSerializer
# Routers provide an easy way of automatically determining the URL conf.
router = routers.DefaultRouter()
router.register(r'api/workouts',WorkoutViewSet)
#router.register(r'api/rower',RowerViewSet)
router.register(r'api/workouts',WorkoutViewSet, 'workout')
handler500 = 'views.error500_view'
handler404 = 'views.error404_view'
@@ -40,7 +56,7 @@ urlpatterns = [
url(r'^', include(router.urls)),
url(r'^api-docs$', views.schema_view),
url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')),
url(r'^api/workouts/(\d+)/strokedata$',views.strokedatajson),
url(r'^api/workouts/(?P<id>\d+)/strokedata$',views.strokedatajson),
url(r'^testbokeh$',views.testbokeh),
url(r'^500/$', TemplateView.as_view(template_name='500.html'),name='500'),
url(r'^404/$', TemplateView.as_view(template_name='404.html'),name='404'),