added temp_index.py

This commit is contained in:
simoon 2021-11-29 10:45:46 +01:00
parent fee0d71e03
commit 080d1e0d29

79
temp_index.py Normal file
View File

@ -0,0 +1,79 @@
from reportlab.lib.pagesizes import *
from reportlab.pdfgen import canvas
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, PageBreak
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from calibrestekje import Book, Publisher, Comment, init_session
pagewidth, pageheight = landscape(A6)
doc = SimpleDocTemplate("text.pdf", pagesize=landscape(A6),
rightMargin=18, leftMargin=18,
topMargin=0, bottomMargin=18)
content = []
styles = getSampleStyleSheet()
session = init_session("sqlite:///metadata.db")
# if book id from book table is the same as book id from comment table, show me that
for book in session.query(Book).all():
for comment in session.query(Comment).all():
if (book.id) == (comment.book):
print (book.id)
print (book.title)
print (book.authors)
print (book.timestamp)
print (book.path)
print (book.tags)
print (comment.text)
# create a paragraph and append content to it - e.g. book.title, book.authors etc
ptitle = Paragraph('<font size=12>{}</font>'.format(book.title), styles["Italic"])
ptime = Paragraph('<font size=10>Uploaded: {}</font>'.format(book.timestamp), styles["Normal"])
pcomments = Paragraph('<font size=10>{}</font>'.format(comment.text))
# list comprehensions for authors and tags
format_string = '<font size=12>{}</font>'
all_authors = [author.name for author in book.authors]
glued_together = format_string.format(", ".join(all_authors))
format_string = '<font size=10>{}</font>'
all_tags = [tag.name for tag in book.tags]
tags_glued_together = format_string.format(", ".join(all_tags))
# format_string = '<font size=10>{}</font>'
# all_comments = [comment.name for comment in comment.text]
# comments_split_apart = format_string.format("".split(all_comments)[:50])
# import ipdb; ipdb.set_trace()
# append the other content
content.append(ptitle)
content.append(Spacer(1, 12))
content.append(ptime)
content.append(Spacer(1, 12))
content.append(pcomments)
# alternative way to list multiple authors... (without list comprehensions)
# first = True
# author_text = ""
# for author in book.authors:
# if not first:
# author_text += ", "
# author_text += author.name
# first = False
# author_text = "<font size=12>{}</font>".format(author_text)
# gluing together authors, tags
p = Paragraph(glued_together, styles["Normal"])
content.append(p)
content.append(PageBreak())
content.append(Spacer(6, 12))
p = Paragraph(tags_glued_together, styles["Normal"])
content.append(p)
content.append(PageBreak())
content.append(Spacer(6, 12))
doc.build(content)