Guest User

Untitled

a guest
Aug 15th, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1. from django.db import models
  2. from datetime import date, timedelta, datetime
  3.  
  4. class Book(models.Model):
  5. name = models.CharField(max_length=30)
  6. author_name = models.CharField(max_length=30)
  7. category = models.CharField(max_length=30)
  8. remaining = models.IntegerField()
  9.  
  10. def __str__(self):
  11. return self.name
  12.  
  13. class Issue(models.Model):
  14. issue_id = models.CharField(max_length=10)
  15. roll = models.ForeignKey(User, on_delete=models.CASCADE)
  16. book_name = models.ForeignKey(Book, on_delete=models.CASCADE)
  17. issue_date = models.DateField(auto_now=False, auto_now_add=True)
  18.  
  19. def save(self, *args, **kwargs):
  20. if not self.pk:
  21. super().save(*args, **kwargs)
  22. if self.book_name.remaining > 0:
  23. self.book_name.remaining -= 1
  24. self.book_name.save()
  25. elif self.book_name.remaining == 0:
  26. print('hi')
  27. else:
  28. super().save(*args, **kwargs)
  29.  
  30. from django.contrib import admin
  31. from django.contrib.auth.models import Group
  32. from .models import User, Book, Issue
  33.  
  34. class BookAdmin(admin.ModelAdmin):
  35. list_display = ('name', 'author_name', 'remaining', 'category')
  36. list_filter = ('category', 'author_name')
  37. search_fields = ('name', 'author_name')
  38.  
  39.  
  40. class IssueAdmin(admin.ModelAdmin):
  41. list_display = ('issue_id', 'issue_date', 'return_date', 'fine',)
  42. list_filter = ('issue_date',)
  43. search_fields = ('issue_id',)
  44.  
  45. admin.site.register(Book, BookAdmin)
  46. admin.site.register(Issue, IssueAdmin)
Add Comment
Please, Sign In to add comment