Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
django的listview中的排序_Django_Sorting_Listview_Django Generic Views - Fatal编程技术网

django的listview中的排序

django的listview中的排序,django,sorting,listview,django-generic-views,Django,Sorting,Listview,Django Generic Views,我在django 2,在这里面临一些问题。让我先给你我的文件 views.py class home_view(ListView): model = home_blog_model template_name = "home.html" context_object_name = "posts" paginate_by = 6 ordering = ['-date'] def get_context_data(self , **kwargs):

我在django 2,在这里面临一些问题。让我先给你我的文件

views.py

class home_view(ListView):
    model = home_blog_model
    template_name = "home.html"
    context_object_name = "posts"
    paginate_by = 6
    ordering = ['-date']


    def get_context_data(self , **kwargs):
        context = super(home_view , self).get_context_data(**kwargs)
        context.update({"snippets":snippet_form_model.objects.all()})
        return context
models.py

class snippet_form_model(models.Model):
    title = models.CharField(max_length=500)
    language = models.CharField(max_length=50)
    code = models.TextField()
    describe = models.TextField()



    class Meta:
        ordering = ['-created']


    def __str__(self):
        return self.title

问题是我想将{{snippet_form_model}}的元素按相反的顺序排序,但我没有在该模型中指定排序依据的日期。有什么不同的方式来设置订单吗?

您可以像这样更新订单:

# Please read PEP-8 Docs for naming
# Class name should be Pascal Case

class snippet_form_model(models.Model):
    title = models.CharField(max_length=500)
    language = models.CharField(max_length=50)
    code = models.TextField()
    describe = models.TextField()

    class Meta:
        ordering = ['-id']  # as you don't have created field. Reverse by ID will also show give you snippet_form_model in reverse order

    def __str__(self):
        return self.title

添加日期并使其自动\u立即\u添加为true。如果您不想在html中使用它,可以在html中跳过它。我想这是最简单的解决方案。我必须为此运行makemigrations吗?因为上次我这么做的时候,我必须删除整个数据库。你不需要删除整个数据库。只需在模型中添加日期,然后运行makemigrations和migrate。你也可以按主键排序。