prije restarta
This commit is contained in:
parent
6e89ea4000
commit
9908fcad02
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -18,10 +18,16 @@ class ObjektSigurnosti(models.Model):
|
||||
return self.naziv
|
||||
|
||||
# class Log(models.Model):
|
||||
# user = models.ForeignKey(User, on_delete=models.CASCADE)
|
||||
# akcija = models.CharField(max_length=255)
|
||||
|
||||
# AKCIJA_CHOICES = (
|
||||
# ('Brisanje', 'Brisanje'),
|
||||
# ('Unos', 'Unos'),
|
||||
# ('Uređivanje', 'Uređivanje')
|
||||
# )
|
||||
# user = models.ForeignKey("user.User", null=True, related_name='user_logs', on_delete=models.SET_NULL)
|
||||
# timestamp = models.DateTimeField(auto_now_add=True)
|
||||
# akcija = models.CharField(max_length=255, choices=AKCIJA_CHOICES)
|
||||
# opis = models.TextField()
|
||||
# vrijeme = models.DateTimeField(default=timezone.now)
|
||||
|
||||
# def __str__(self):
|
||||
# return f"{self.user.username} - {self.akcija} - {self.opis}"
|
||||
# return self.opis
|
||||
@ -1,9 +1,15 @@
|
||||
# serializers.py
|
||||
|
||||
from rest_framework import serializers
|
||||
from .models import ObjektSigurnosti
|
||||
from .models import ObjektSigurnosti, Log
|
||||
|
||||
class ObjektSigurnostiSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = ObjektSigurnosti
|
||||
fields = '__all__'
|
||||
|
||||
# class LogSerializer(serializers.ModelSerializer):
|
||||
|
||||
# user_full_name = serializers.ReadOnlyField(source='user.full_name')
|
||||
|
||||
# class Meta:
|
||||
# model = Log
|
||||
# fields = ('id', 'user', 'user_full_name', 'timestamp', 'akcija', 'opis')
|
||||
@ -1,8 +1,10 @@
|
||||
|
||||
from django.urls import path, include
|
||||
from .views import ObjektSigurnostiList, ObjektSigurnostiDetail
|
||||
from .views import ObjektSigurnostiList, ObjektSigurnostiDetail, Log
|
||||
from plovidba_aplikacija import views
|
||||
|
||||
urlpatterns = [
|
||||
path('objekti/', ObjektSigurnostiList.as_view(), name='objektisigurnosti-list'),
|
||||
path('objekti/<int:pk>/', ObjektSigurnostiDetail.as_view(), name='objektisigurnosti-detail' ),
|
||||
# path('logs/', views.Log.as_view(), name='log-list')
|
||||
]
|
||||
|
||||
@ -4,37 +4,49 @@ from rest_framework.generics import ListAPIView
|
||||
from rest_framework.response import Response
|
||||
from rest_framework import status
|
||||
from rest_framework import generics
|
||||
from .models import ObjektSigurnosti
|
||||
from .models import ObjektSigurnosti, Log
|
||||
from .serializers import ObjektSigurnostiSerializer
|
||||
from django.shortcuts import get_object_or_404
|
||||
from rest_framework.pagination import LimitOffsetPagination
|
||||
|
||||
|
||||
|
||||
class CustomObjektSigurnostiPagination(LimitOffsetPagination):
|
||||
default_limit = 20
|
||||
|
||||
|
||||
class ObjektSigurnostiList(generics.ListCreateAPIView):
|
||||
queryset = ObjektSigurnosti.objects.all().order_by("naziv")
|
||||
serializer_class = ObjektSigurnostiSerializer
|
||||
pagination_class = CustomObjektSigurnostiPagination
|
||||
|
||||
def get_queryset(self): #queryset je data iz database, listing and creating objects
|
||||
queryset = ObjektSigurnosti.objects.all()
|
||||
location = self.request.query_params.get('lokacija')
|
||||
if location is not None:
|
||||
queryset = queryset.filter(lokacija__icontains=location)
|
||||
return queryset
|
||||
def get_queryset(self):
|
||||
user = self.request.user
|
||||
return user.accounts.all()
|
||||
# def get_queryset(self): #queryset je data iz database, listing and creating objects
|
||||
# queryset = ObjektSigurnosti.objects.all()
|
||||
# location = self.request.query_params.get('lokacija')
|
||||
# if location is not None:
|
||||
# queryset = queryset.filter(lokacija__icontains=location)
|
||||
# return queryset
|
||||
|
||||
# def get_serializer_class(self):
|
||||
# if self.request.method == "GET":
|
||||
# return ObjektSigurnostiSerializer
|
||||
# return self.serializer_class()
|
||||
def perform_create(self, serializer):
|
||||
#used to customize the behavior when creating an object, and in this case,
|
||||
#it sets the operater field and creates a log entry for the created object.
|
||||
serializer.save(operater=self.request.user)
|
||||
instance = serializer.instance
|
||||
self.create_log(instance)
|
||||
|
||||
def get_serializer_class(self):
|
||||
if self.request.method == "GET":
|
||||
return ObjektSigurnostiSerializer
|
||||
return self.serializer_class()
|
||||
|
||||
|
||||
class ObjektSigurnostiDetail(generics.RetrieveUpdateDestroyAPIView): #retrieving, updating, and deleting a specific object
|
||||
queryset = ObjektSigurnosti.objects.all()
|
||||
serializer_class = ObjektSigurnostiSerializer
|
||||
|
||||
|
||||
# def perform_update(self, serializer):
|
||||
# instance = serializer.save()
|
||||
# opis = "Korisnik je uredio objekt sigurnosti {} (ID: {})".format(
|
||||
@ -48,3 +60,4 @@ class ObjektSigurnostiDetail(generics.RetrieveUpdateDestroyAPIView): #ret
|
||||
# instance.vrsta.naziv, instance.id
|
||||
# )
|
||||
# Log.objects.create(user=self.request.user, akcija="Brisanje", opis=opis)
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user