django模型输出横幅广告的排序

时间:2019-02-01 10:13:04

标签: django django-models

我有一个Django网站,我正在为一个大约5岁的我的客户管理。在内容管理的页面之一上,它具有一个非常简单的轮播。客户希望这些图像是在页面加载时随机选择的,而不是它们在CMS中的组织顺序。这是该元素模型的代码

 from django.db import models

 class Banner(models.Model):

 created = models.DateTimeField(auto_now_add=True)
 active = models.BooleanField(default=True, help_text='Display this banner on the website.')

 title = models.CharField(max_length=255)
 description = models.TextField()
 image = models.ImageField(upload_to='banners/')
 order = models.IntegerField(default=0)

 class Meta:
    ordering = ['order']

我想知道是否有人可以通过向我展示如何做到这一点来帮助我,或者是否有可能?我认为,这与建议的链接不同,因为它没有显示如何专门解决此问题。

2 个答案:

答案 0 :(得分:0)

您可以通过使用

来改组查询集
banner_obj = Banner.objects.all().order_by('?')

这将为您在每次通话中提供随机结果

答案 1 :(得分:0)

我决定最终用js进行随机化处理,因为我没有时间来处理有关原始查询的选项