Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.db import models
- from datetime import date, timedelta, datetime
- class Book(models.Model):
- name = models.CharField(max_length=30)
- author_name = models.CharField(max_length=30)
- category = models.CharField(max_length=30)
- remaining = models.IntegerField()
- def __str__(self):
- return self.name
- class Issue(models.Model):
- issue_id = models.CharField(max_length=10)
- roll = models.ForeignKey(User, on_delete=models.CASCADE)
- book_name = models.ForeignKey(Book, on_delete=models.CASCADE)
- issue_date = models.DateField(auto_now=False, auto_now_add=True)
- def save(self, *args, **kwargs):
- if not self.pk:
- super().save(*args, **kwargs)
- if self.book_name.remaining > 0:
- self.book_name.remaining -= 1
- self.book_name.save()
- elif self.book_name.remaining == 0:
- print('hi')
- else:
- super().save(*args, **kwargs)
- from django.contrib import admin
- from django.contrib.auth.models import Group
- from .models import User, Book, Issue
- class BookAdmin(admin.ModelAdmin):
- list_display = ('name', 'author_name', 'remaining', 'category')
- list_filter = ('category', 'author_name')
- search_fields = ('name', 'author_name')
- class IssueAdmin(admin.ModelAdmin):
- list_display = ('issue_id', 'issue_date', 'return_date', 'fine',)
- list_filter = ('issue_date',)
- search_fields = ('issue_id',)
- admin.site.register(Book, BookAdmin)
- admin.site.register(Issue, IssueAdmin)
Add Comment
Please, Sign In to add comment