Created a reverse relation back to Author and added the get_absolute_url function to both models

parent 453441ef
from django.db import models from django.db import models
from django.urls import reverse
class Author(models.Model): class Author(models.Model):
...@@ -11,10 +12,13 @@ class Author(models.Model): ...@@ -11,10 +12,13 @@ class Author(models.Model):
def __str__(self): def __str__(self):
return self.first_name + ' ' + self.last_name return self.first_name + ' ' + self.last_name
def get_absolute_url(self):
return reverse('bookshelf:author-item', kwargs={'pk': self.pk})
class Books(models.Model): class Books(models.Model):
title = models.CharField(max_length=255, blank=True, null=True) title = models.CharField(max_length=255, blank=True, null=True)
author = models.ForeignKey(Author, on_delete=models.CASCADE, blank=True, null=True) author = models.ForeignKey(Author, related_name='works', on_delete=models.CASCADE, blank=True, null=True)
publisher = models.CharField(max_length=255, blank=True, null=True) publisher = models.CharField(max_length=255, blank=True, null=True)
year_published = models.IntegerField(blank=True, null=True) year_published = models.IntegerField(blank=True, null=True)
ISBN = models.IntegerField(blank=True, null=True) ISBN = models.IntegerField(blank=True, null=True)
...@@ -22,3 +26,7 @@ class Books(models.Model): ...@@ -22,3 +26,7 @@ class Books(models.Model):
def __str__(self): def __str__(self):
return self.title return self.title
def get_absolute_url(self):
return reverse('bookshelf:book-item', kwargs={'pk': self.pk})
\ No newline at end of file
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