Lista de compilación de Django y vista detallada

Una vez que comprenda cómo usar ORM, puede prepararse para crear la vista de su aplicación (aquí tomo el blog como ejemplo). La vista de Django solo se representa como una función de Python, que recibe una solicitud web y devuelve una respuesta web. Además, toda la lógica para devolver el resultado de la respuesta se encuentra en la vista.

Primero, debe crear una vista de aplicación y luego definir la URL para cada vista. Finalmente, necesita crear una plantilla HTML para representar los datos generados por la vista. Entre ellos, cada vista renderizará una plantilla (pasará variables a ella) y devolverá una respuesta HTTP que contiene el resultado de salida renderizado.

Generar listas y vistas
Empecemos a crear vistas para mostrar la lista de publicaciones. Edite el archivo views.py de la aplicación de blog de la siguiente manera:

from django.shortcuts import render, get_object_or_404
from .models import Post

def post_list(request, tag_slug=None):
    posts = Post.objects.all()
    return render(request, 'blog/post/list.html', {
    
    'posts': posts})

El código anterior crea la primera vista de Django. Específicamente, la vista post_list recibe el objeto de solicitud como único parámetro. Cabe señalar que todas las vistas deben utilizar este parámetro. En la vista actual, el administrador de objetos se utilizará para recuperar todas las publicaciones que contienen el estado de los objetos. Finalmente, use el método render () proporcionado por Django para renderizar la lista de publicaciones que contienen la plantilla dada.

Creemos una segunda vista y mostremos publicaciones independientes. Para ello, puede agregar las siguientes funciones al archivo views.py:

def post_detail(request, year, month, day, post):
    post = get_object_or_404(Post, slug=post,
                             status='published',
                             publish__year=year,
                             publish__month=month,
                             publish__day=day)
    return render(request, 'blog/post/detail.html', {
    
    'post': post})

Como vista detallada de la publicación, esta vista acepta año, mes, día y publicación como parámetros, y recupera las publicaciones publicadas que contienen un slug y una fecha determinados. Finalmente, use el método render () proporcionado por Django para renderizar la lista de publicaciones que contienen la plantilla dada.

Tenga en cuenta que hasta ahora, solo hemos escrito la vista, y la ruta y la plantilla de vista deben agregarse a continuación. Esta parte se actualizará mañana. Gracias por el apoyo.

Supongo que te gusta

Origin blog.csdn.net/Erudite_x/article/details/112588089
Recomendado
Clasificación