・ Python: 3.8.5 ・ Django: 3.1.2 ・ Environnement virtuel: venv ・ Editeur: Pycharm
・ Je souhaite inverser l'ordre des messages à l'aide d'une application de tableau d'affichage qui permet de publier.
-Ajouter la date et l'heure de création created_at
(quel que soit le nom) à la classe de publication de models.py
.
timezone
.models.py
from django.utils import timezone
class Post(models.Model):
title = models.CharField(max_length=20)
content = models.CharField(max_length=140)
created_at = models.DateTimeField(default=timezone.now)
def __str__(self):
return self.title
View
-Importer la vue générique ListView
et l'hériter dans la classe PostListView
.
-Ecrire l'ordre inverse de created_at
du modèle créé précédemment avec ʻordering`.
views.py
from django.views.generic import ListView
from .models import Post
class PostListView(ListView):
model = Post
context_object_name = 'posts'
ordering = ['-created_at']
template_name = 'index.html'
J'ai pu le faire. Si cela ne semble pas bien reflété, essayez la migration ou vérifiez à nouveau les erreurs de code.
Recommended Posts