Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
AE UTBM
Sith
Commits
bfa966e3
Commit
bfa966e3
authored
Aug 07, 2016
by
Sli
Browse files
Birthday API and some more enhacements
parent
8e8ee808
Pipeline
#101
failed with stage
in 2 minutes and 8 seconds
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
api/views/api.py
View file @
bfa966e3
import
datetime
from
django.shortcuts
import
get_object_or_404
from
rest_framework.response
import
Response
from
rest_framework.decorators
import
api_view
...
...
@@ -7,7 +9,7 @@ from rest_framework.decorators import list_route
from
core.templatetags.renderer
import
markdown
from
counter.models
import
Counter
from
core.models
import
User
,
Group
from
core.models
import
User
,
Real
Group
from
club.models
import
Club
from
api.views
import
serializers
from
api.views
import
RightManagedModelViewSet
...
...
@@ -42,10 +44,21 @@ class CounterViewSet(RightManagedModelViewSet):
class
UserViewSet
(
RightManagedModelViewSet
):
"""
Manage Users (api/v1/user/)
Only show active users
"""
serializer_class
=
serializers
.
UserRead
queryset
=
User
.
objects
.
all
()
queryset
=
User
.
objects
.
filter
(
is_active
=
True
)
@
list_route
()
def
birthday
(
self
,
request
):
"""
Return all users born today (api/v1/user/birstdays)
"""
date
=
datetime
.
datetime
.
today
()
self
.
queryset
=
self
.
queryset
.
filter
(
date_of_birth
=
date
)
serializer
=
self
.
get_serializer
(
self
.
queryset
,
many
=
True
)
return
Response
(
serializer
.
data
)
class
ClubViewSet
(
RightManagedModelViewSet
):
...
...
@@ -62,4 +75,4 @@ class GroupViewSet(RightManagedModelViewSet):
"""
serializer_class
=
serializers
.
GroupRead
queryset
=
Group
.
objects
.
all
()
queryset
=
Real
Group
.
objects
.
all
()
api/views/serializers.py
View file @
bfa966e3
from
rest_framework
import
serializers
from
counter.models
import
Counter
from
core.models
import
User
,
Group
from
core.models
import
User
,
Real
Group
from
club.models
import
Club
...
...
@@ -20,15 +20,18 @@ class UserRead(serializers.ModelSerializer):
class
Meta
:
model
=
User
fields
=
(
'id'
,
'first_name'
,
'last_name'
,
'email'
,
'date_of_birth'
,
'nick_name'
,
'is_active'
,
'date_joined'
)
class
ClubRead
(
serializers
.
ModelSerializer
):
class
Meta
:
model
=
Club
fields
=
(
'id'
,
'name'
,
'unix_name'
,
'address'
,
'members'
)
class
GroupRead
(
serializers
.
ModelSerializer
):
class
Meta
:
model
=
Group
model
=
Real
Group
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment