Kapitel 11. Blogbeiträge
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Dieses Kapitel ist der Implementierung der Hauptfunktion von Flasky gewidmet, die es Nutzern ermöglicht, Blogbeiträge zu lesen und zu schreiben. Hier lernst du einige neue Techniken für die Wiederverwendung von Templates, die Paginierung langer Listen von Artikeln und die Arbeit mit Rich Text.
Blog Post Submission und Anzeige
Um Blog-Posts zu unterstützen, ist ein neues Datenbankmodell erforderlich, das sie repräsentiert. Dieses Modell ist in Beispiel 11-1 dargestellt.
Beispiel 11-1. app/models.py: Post-Modell
class
Post
(
db
.
Model
):
__tablename__
=
'posts'
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
)
body
=
db
.
Column
(
db
.
Text
)
timestamp
=
db
.
Column
(
db
.
DateTime
,
index
=
True
,
default
=
datetime
.
utcnow
)
author_id
=
db
.
Column
(
db
.
Integer
,
db
.
ForeignKey
(
'users.id'
))
class
User
(
UserMixin
,
db
.
Model
):
# ...
posts
=
db
.
relationship
(
'Post'
,
backref
=
'author'
,
lazy
=
'dynamic'
)
Ein Blog-Post wird durch einen Body, einen Zeitstempel und eine eins-zu-viele-Beziehung aus dem User
Modell dargestellt. Das Feld body
ist mit dem Typ db.Text
definiert, so dass es keine Begrenzung der Länge gibt.
Das Formular, das auf der Hauptseite der Anwendung angezeigt wird, ermöglicht es den Nutzern, einen Blogbeitrag zu schreiben. Dieses Formular ist sehr einfach; es enthält nur einen Textbereich, in den der Blogbeitrag eingegeben werden kann, und eine Schaltfläche ...
Get Flask Web Development, 2. Auflage now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.