Capítulo 11. Entradas de blog

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Este capítulo está dedicado a la implementación de la función principal de Flasky, que es permitir a los usuarios leer y escribir entradas de blog. Aquí aprenderás algunas técnicas nuevas para la reutilización de plantillas, la paginación de listas largas de elementos y el trabajo con texto enriquecido.

Presentación y visualización de entradas de blog

Para dar soporte a las entradas de blog, es necesario un nuevo modelo de base de datos que las represente. Este modelo se muestra en el Ejemplo 11-1.

Ejemplo 11-1. app/modelos.py: Publicar modelo
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')

Una entrada de blog está representada por un cuerpo, una marca de tiempo y una relación de uno a muchos del modelo User. El campo body se define con el tipo db.Text para que no haya limitación en la longitud.

El formulario que se mostrará en la página principal de la aplicación permite a los usuarios escribir una entrada de blog. Este formulario es muy sencillo; sólo contiene un área de texto donde se puede escribir la entrada del blog y un botón ...

Get Desarrollo Web con Flask, 2ª Edición 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.