Reputation: 115
I am trying to send a list of books objects to my template to display their names and images.Here is my book class
class Book(models.Model):
title=models.CharField(max_length=100)
zonar=models.CharField(max_length=20)
book_id=models.IntegerField(default=10)
image=models.ImageField()
file=models.FileField(upload_to="cars",default="")
Here is my django view
def books_display(request,zonar):
###########
###########
zonar_books=Book.objects.filter(zonar=zonar)
books={"zonar":zonar,"zonar_books":zonar_books}
return render(request,"books/books_listed.html",books)
finally this is my template
<<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>
{% if zonar %}
{{ zonar }}
{%endif%}
books </title>
</head>
<body>
{% if zonar_books %}
{% for book in zonar_books %}
<h1>{{ book.tile}}</h1>
{% endfor %}
{% endif %}
</body>
</html>
And iam getting following error
Error during template rendering
In template C:\Users\Sriram\Desktop\books_site\books\templates\books\books_listed.html, error at line 12
no such column: books_book.zonar
Upvotes: 0
Views: 153
Reputation: 26
It seems to me that you did not apply migrations
Try to run python manage.py makemigrations
and then python manage.py migrate
(you should know it)
And use {{ book.title }}
, instead of {{ book.tile }}
It should work fine.
Upvotes: 0