Compare commits
6 Commits
main
...
feat/rest-
Author | SHA1 | Date | |
---|---|---|---|
![]() |
a686ead3cc | ||
![]() |
72f11eef14 | ||
![]() |
b31b5cfdb5 | ||
![]() |
296476ebf4 | ||
![]() |
89904e25ab | ||
![]() |
14cf8f6e50 |
18
src/agenda_culturel/serializers.py
Normal file
18
src/agenda_culturel/serializers.py
Normal file
@ -0,0 +1,18 @@
|
||||
from rest_framework import serializers
|
||||
from .models import Event
|
||||
|
||||
class EventSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Event
|
||||
fields = [
|
||||
"id",
|
||||
"title",
|
||||
"category",
|
||||
"status",
|
||||
"start_day",
|
||||
"start_time",
|
||||
"end_day",
|
||||
"end_time",
|
||||
"location",
|
||||
"organisers",
|
||||
]
|
@ -65,8 +65,17 @@ INSTALLED_APPS = [
|
||||
"template_profiler_panel",
|
||||
'django_cleanup.apps.CleanupConfig',
|
||||
'django_unused_media',
|
||||
'rest_framework',
|
||||
]
|
||||
|
||||
REST_FRAMEWORK = {
|
||||
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
|
||||
'PAGE_SIZE': 10,
|
||||
"DEFAULT_PERMISSION_CLASSES": [
|
||||
"rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly",
|
||||
]
|
||||
}
|
||||
|
||||
HONEYPOT_FIELD_NAME = "alias_name"
|
||||
|
||||
MIDDLEWARE = [
|
||||
|
@ -3,6 +3,7 @@ from django.conf.urls.static import static
|
||||
from django.contrib import admin
|
||||
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
|
||||
from django.urls import path, include, re_path
|
||||
from .views import EventListAPIView
|
||||
from django.views.i18n import JavaScriptCatalog
|
||||
from django.contrib.sitemaps.views import sitemap
|
||||
from django.contrib.sitemaps import GenericSitemap
|
||||
@ -238,6 +239,7 @@ urlpatterns = [
|
||||
name="cached-sitemap",
|
||||
),
|
||||
path("cache/clear", clear_cache, name="clear_cache"),
|
||||
path('api/events/', EventListAPIView.as_view(), name='event-list-api'),
|
||||
|
||||
]
|
||||
|
||||
|
@ -2479,3 +2479,15 @@ def clear_cache(request):
|
||||
request,
|
||||
"agenda_culturel/clear_cache.html",
|
||||
)
|
||||
|
||||
from rest_framework import generics
|
||||
from .serializers import EventSerializer
|
||||
from rest_framework.pagination import PageNumberPagination
|
||||
|
||||
class EventListPagination(PageNumberPagination):
|
||||
page_size = 10
|
||||
|
||||
class EventListAPIView(generics.ListAPIView):
|
||||
queryset = Event.objects.all()
|
||||
serializer_class = EventSerializer
|
||||
pagination_class = EventListPagination
|
@ -5,3 +5,4 @@ pytest-sugar==0.9.7
|
||||
coverage[toml]==7.2.5
|
||||
black==23.3.0
|
||||
ruff==0.0.265
|
||||
Pygments==2.19.1
|
||||
|
@ -50,3 +50,4 @@ requests==2.32.3
|
||||
django-cleanup==9.0.0
|
||||
django-unused-media==0.2.2
|
||||
django-resized==1.0.3
|
||||
djangorestframework==3.15.2
|
Loading…
x
Reference in New Issue
Block a user