1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
{% extends 'base.html' %}
{% load typogrify_tags %}
{% load html5_datetime %}
{% load pagination_tags %}
{% block pagetitle %} Books | luxagraf {% endblock %}
{% block metadescription %}Books I've read and thoughts on them. {% endblock %}
{%block bodyid%}class="archive" id="books-archive"{%endblock%}
{% block primary %}
<ul class="bl" id="breadcrumbs" itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
<li><a href="/" title="luxagraf homepage" itemprop="url"><span itemprop="title">Home</span></a> → </li>
<li>Books</li>
</ul>
<main>{% autopaginate object_list 24 %}
<h1 class="hide">Books</h1>
<div class="intro">
<p>I wear glasses because as a child I would stay up late, covers pulled over my head, reading by the dim light of a dying flashlight. At least that's what an eye doctor told me when I was younger. Probably a load of crap, but I still love reading and I still often do it by poor light far later in the night than is reasonable.</p>
<p>I've always taken notes while reading, usually with a pen and paper, but sometimes as highlights in the Kindle. And of course since I have all this stuff in text files I thought might as well put it online. So here you have it, books I've read and things I've thought about them.</p>
</div>
<nav class="pagination">{% paginate %}
</nav>
<div class="archive-grid book-grid"> {% for object in object_list %}
<article class="archive-card" itemscope itemtype="http://schema.org/Book">
{% if object.image %}<div class="img-wrapper"><a href="{{object.get_absolute_url}}"><img itemprop="image" src="{{object.get_image_url}}" alt="cover art for {{object.title}} by {{object.author_name}}"/></a></div>{%endif%}
<h2 class="post-title" itemprop="name"><a href="{{object.get_absolute_url}}">{{object.title|amp|smartypants|widont|safe}}</a></h2>
<h4 class="author" itemprop="author">{{object.author_name}}</h4>
<div class="post-summary" itemprop="review" itemscope itemtype="http://schema.org/Review">
{% if object.rating %}<span class="book-stars" itemprop="reviewRating">{% for i in object.ratings_range %}{% if i <= object.get_rating%}★{%else%}☆{%endif%}{%endfor%}</span>{%endif%}
<span class="hide" itemprop="author">Scott Gilbertson</span>
<meta itemprop="datePublished" content="{{object.read_date|date:'F Y'}}"><span class="read-in">Read in: {{object.read_date|date:"F Y"}}</span></div>
</article>
{% endfor %}</div>
<nav class="pagination">{% paginate %}
</nav>
</main>
{% endblock %}
title = models.CharField(max_length=200)
author_name = models.CharField(max_length=200)
slug = models.CharField(max_length=50)
year_pub = models.CharField(max_length=4, blank=True, null=True)
read_date = models.DateTimeField()
isbn = models.CharField(max_length=100, blank=True, null=True)
body_html = models.TextField(null=True, blank=True)
url = models.CharField(max_length=200, blank=True, null=True)
tags = TaggableManager()
RATINGS = (
('1', "1 Star"),
('2', "2 Stars"),
('3', "3 Stars"),
('4', "4 Stars"),
('5', "5 Stars"),
)
rating = models.CharField(max_length=1, choices=RATINGS, null=True)
enable_comments = models.BooleanField(default=False)
image = models.FileField(upload_to='book-covers/', null=True, blank=True)
|