Add documentation and source

Added documentation, source and extra files.
This commit is contained in:
2025-07-02 20:26:50 +02:00
parent 4fc1d36a10
commit e3ebf6bf4f
295 changed files with 24986 additions and 0 deletions

View File

@ -0,0 +1,29 @@
from uuid import uuid4
from django.db import models
class Loan(models.Model):
"""
Model for book loans.
"""
uuid = models.UUIDField(default=uuid4, db_index=True, verbose_name="UUID")
person = models.ForeignKey("library.Person", on_delete=models.CASCADE, related_name="loans", verbose_name="person")
book = models.ForeignKey("library.Book", on_delete=models.CASCADE, related_name="loans", verbose_name="book")
date = models.DateTimeField(auto_now_add=True, verbose_name="date")
expected_return = models.DateTimeField(null=True, verbose_name="expected return date")
borrowed = models.BooleanField(null=True, default=True, verbose_name="borrowed")
class Meta:
verbose_name = "book loan"
verbose_name_plural = "book loans"
unique_together = [("book", "borrowed")]
def __str__(self):
return f"Book loan: {self.person}{self.book}"
def return_book(self):
self.borrowed = None
self.save()