diff --git a/library/models.py b/library/models.py index 944cffb..3aa2deb 100644 --- a/library/models.py +++ b/library/models.py @@ -1,6 +1,7 @@ from django.contrib.auth import get_user_model from django.db import models from django.db.models import Q, F +from django.utils import timezone from django.utils.translation import gettext_lazy as _ @@ -24,7 +25,7 @@ def __str__(self): class Borrowing(models.Model): - borrow_date = models.DateField(auto_now_add=True) + borrow_date = models.DateField(default=timezone.now().date()) expected_return_date = models.DateField() actual_return_date = models.DateField(null=True, blank=True) diff --git a/library/serializers.py b/library/serializers.py index a4df28c..b90ec4d 100644 --- a/library/serializers.py +++ b/library/serializers.py @@ -6,26 +6,13 @@ class BookSerializer(serializers.ModelSerializer): - class Meta: - model = Book - fields = ( - "id", - "title", - "author", - "cover", - "inventory", - "daily_fee", - ) - - -class BookDetailSerializer(serializers.ModelSerializer): class Meta: model = Book fields = ("id", "title", "author", "cover", "inventory", "daily_fee") class BorrowingReadSerializer(serializers.ModelSerializer): - book = BookDetailSerializer(read_only=True) + book = BookSerializer(read_only=True) class Meta: model = Borrowing @@ -45,7 +32,7 @@ class Meta: read_only_fields = ("id",) def validate_expected_return_date(self, value): - today = timezone.localdate() + today = timezone.now().date() if value < today: raise serializers.ValidationError( "Expected return date cannot be " "earlier than today." diff --git a/library/views.py b/library/views.py index 517b7c7..806d396 100644 --- a/library/views.py +++ b/library/views.py @@ -118,7 +118,7 @@ def return_book(self, request, pk=None): status=status.HTTP_400_BAD_REQUEST, ) - borrowing.actual_return_date = timezone.localdate() + borrowing.actual_return_date = timezone.now().date() borrowing.save(update_fields=["actual_return_date"]) Book.objects.filter(pk=borrowing.book_id).update(