Commit 4f40ae22 authored by Julia Anishka's avatar Julia Anishka

added functions in author and books model

parent 6d153fd0
from django.contrib import admin from django.contrib import admin
# Register your models here.
...@@ -10,7 +10,10 @@ class Author(models.Model): ...@@ -10,7 +10,10 @@ class Author(models.Model):
nationality = models.CharField(max_length = 50) nationality = models.CharField(max_length = 50)
bio = models.TextField(max_length = 700) bio = models.TextField(max_length = 700)
def require_int(value): def __str__(self):
return self.first_name + ' ' + self.last_name
def verify_int(value):
if value.isdigit() == False: if value.isdigit() == False:
raise ValidationError('ISBN must only be integers.') raise ValidationError('ISBN must only be integers.')
...@@ -18,11 +21,13 @@ class Books(models.Model): ...@@ -18,11 +21,13 @@ class Books(models.Model):
title = models.CharField(max_length = 70) title = models.CharField(max_length = 70)
author = models.ForeignKey(Author, on_delete = models.CASCADE) author = models.ForeignKey(Author, on_delete = models.CASCADE)
publisher = models.CharField(max_length = 70) publisher = models.CharField(max_length = 70)
year_published = models.IntegerField(null = True, year_published = models.IntegerField(null = True, blank = True,
validators=[MinValueValidator(1400), MaxValueValidator(datetime.now().year)] validators=[MinValueValidator(1000), MaxValueValidator(datetime.now().year)]
) )
ISBN = models.CharField(max_length = 13, validators = [MinValueValidator(13), require_int]) ISBN = models.CharField(max_length = 13, validators = [MinValueValidator(13), verify_int])
blurb = models.CharField(min_length = 100, max_length = 200) blurb = models.CharField(max_length = 200, validators = [MinValueValidator(100)])
def __str__(self):
return self.title
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment