Я сделал свою модель поста, где храню всю информацию поста, такую как заголовок, тело, теги и так далее. И я связал его с моим шаблоном индекса с помощью цикла for:
<!-- Blog Post -->
{% for blog in object_list %}
<div class="card mb-4">
<div class="card-body">
<h4 id="post_title" class="card-title">{{blog.title}}</h2>
<div id="post_body" class="card-text">{{blog.formatted_markdown|safe}}</div>
<a href="details/{{blog.id}}" class="btn btn-primary">Read More</a>
</div>
<div class="card-footer text-muted">
<p id="foot_page">{{blog.date}}</p>
<a id="foot_page" href="#">{{blog.author}}</a>
</div>
</div>
{% endfor %}
И когда я запускаю свой сервер, сообщение появляется в блоге, упорядоченном по возрастанию pub_date, поэтому новые появляются, задерживая старые.
Что я могу сделать, чтобы новое сообщение появилось сверху?
Вот мой класс модели Post, если он полезен:
class Post(models.Model):
title = models.CharField(max_length=255)
body = MarkdownxField()
tags = models.ManyToManyField(Tag)
author = models.CharField(max_length=255, default='Raúl Chirinos')
date = models.DateTimeField(auto_now_add=True, blank=True)
@property
def formatted_markdown(self):
return markdownify(self.body)
def __str__(self):
return self.title
Я управлял представлениями в файле urls:
from django.conf.urls import url
from django.urls import include, path
from django.contrib import admin
from django.views.generic.list import ListView
from django.views.generic.detail import DetailView
from raulchirinos.models import Post
app_name = 'raulchirinos'
urlpatterns = [
url(r'^markdownx/', include('markdownx.urls')),
url(r'^admin/', admin.site.urls, name='admin-site'),
url(r'^$', ListView.as_view(model=Post, template_name='raulchirinos/index.html'), name='index'),
url(r'^details/(?P<pk>[0-9]+)/$', DetailView.as_view(model=Post, template_name='raulchirinos/post_template/post.html'), name='post_details'),
]