blog/views.py
en los méetodos post_new
y post_edit
:post_list
que muestra solamente los post publicados (aquellos que tienen un publication_date
no vacío).blog/templates/blog/base.html
en el encabezado. No queremos mostrar nuestro borradores a todo el mundo, entonces vamos a colocarlo dentro de la verificación {% if user.is_authenticated %}
, justo después del botón de agregar posts.blog/urls.py
vamos a agregar:blog/views.py
posts = Post.objects.filter(published_date__isnull=True).order_by('created_date')
se asegura de que solamente vamos a tomar post no publicados (published_date__isnull=True
) y los ordena por created_date
(order_by('created_date')
).blog/templates/blog/post_draft_list.html
y agrega lo siguiente:post_list.html
¿verdad?http://127.0.0.1:8000/drafts/
vas a ver la lista de post no publicados.blog/templates/blog/post_detail.html
y cambiar estas líneas:{% else %}
. Esto significa, que la condición de {% if post.published_date %}
no es cumplida (entonces no hay publication_date
), entonces queremos agregar la línea <a class="btn btn-default" href="{% url 'post_publish' pk=post.pk %}">Publish</a>
. Nota que estamos pasando la variable pk
en el {% url %}
.blog/urls.py
):blog/views.py
):Post
escribimos un método publush
. Se veía como esto:post_detail
!blog/templates/blog/post_detail.html
de nuevo y vamos a añadir esta líneablog/urls.py
):blog/views.py
y agrega este código:.delete()
. ¡Así de simple!redirect
.