employees api
This commit is contained in:
@@ -1,3 +1,30 @@
|
||||
from django.shortcuts import render
|
||||
from rest_framework import viewsets
|
||||
from rest_framework.filters import SearchFilter, OrderingFilter
|
||||
from django_filters.rest_framework import DjangoFilterBackend
|
||||
from .models import Position, Department, Employee
|
||||
from .serializers import PositionSerializer, DepartmentSerializer, EmployeeSerializer
|
||||
from .filters import EmployeeFilter # Фильтры будут добавлены позже
|
||||
|
||||
# Create your views here.
|
||||
class PositionViewSet(viewsets.ModelViewSet):
|
||||
queryset = Position.objects.all()
|
||||
serializer_class = PositionSerializer
|
||||
filter_backends = [SearchFilter, OrderingFilter]
|
||||
search_fields = ["name"]
|
||||
ordering_fields = ["name"]
|
||||
|
||||
|
||||
class DepartmentViewSet(viewsets.ModelViewSet):
|
||||
queryset = Department.objects.all()
|
||||
serializer_class = DepartmentSerializer
|
||||
filter_backends = [SearchFilter, OrderingFilter]
|
||||
search_fields = ["name"]
|
||||
ordering_fields = ["name"]
|
||||
|
||||
|
||||
class EmployeeViewSet(viewsets.ModelViewSet):
|
||||
queryset = Employee.objects.all()
|
||||
serializer_class = EmployeeSerializer
|
||||
filter_backends = [DjangoFilterBackend, SearchFilter, OrderingFilter]
|
||||
filterset_class = EmployeeFilter
|
||||
search_fields = ["account__first_name", "account__last_name", "position__name", "department__name"]
|
||||
ordering_fields = ["department", "position", "account__last_name"]
|
||||
Reference in New Issue
Block a user