1
7e_Proyecto_Web_Completo
Fuzan edited this page 2021-07-02 22:33:32 -04:00
Categorias del Blog
Crear plantilla categorias.html
Con el proposito de lista las categorias de las entradas mostradas en esta página,
Editar blog.html, para listar categorias en la parte inferior de la plantilla
{% endfor %}
<section>
<div style="width:60%; background-color:Tomato; margin:auto; text-align:center;">
Categorías :
{% for entrada in entradas %}
{% for categoria in entrada.categorias.all %}
{{categoria.nombre}}
{% endfor %}
{% endfor %}
</div>
</section>
{% endblock %}
Copiar blog.html como categorias.html
Para consegir consultar categorías directamente por la url con categoria_id
/blog/urls.py
...
urlpatterns = [
path('', views.blog, name ='Blog'),
path('categoria/<int:categoria_id>/', views.categoria, name = 'categoria'),
]
Crear vista
/blog/views.py
def categoria(request, categoria_id):
categoria = Categoria.objects.get( id=categoria_id )
entrada = Entrada.objects.filter( categorias = categoria )
return render(request, "blog/categorias.html", {'categoria':categoria, 'entradas':entrada})
Aplicar estilo a links categorias
blog.html categorias.html
...
<a href="{% url 'categoria' categoria.id %}" class="link">{{categoria.nombre}}</a>
...
Corrigiendo el comportamiento de la barra de navegación
Esta configurada para activar el estilo solo para la url especificada, y no para las siguientes,
ej. /blog/ pero no /blog/categoria/1
/templates/ProyectoWebApp/base.html
...
<li class="nav-item {% if request.path|slice:':6' == '/blog/' %}active{% endif %} px-lg-4">
<a class="nav-link text-uppercase text-expanded" href="{% url 'Blog' %}">Blog</a>
</li>
...
PENDIENTE en Blog
- Listar correctamente la lista de categorias
- Mejorar estilo de los links categorias (crear jerarquia propia en blog?)