django如何随机获取某个分类下的文章

models.py

class Category(models.Model):
    name=models.CharField(max_length=50,null=True,verbose_name='名称')
    ...

class Article(models.Model):
   name=models.CharField(max_length=100,null=True,verbose_name="书名")
   author=models.ForeignKey(Author,verbose_name="作者")
  category=models.ForeignKey(Category,verbose_name="归属栏目")
...

求教 如何随机查询出某个分类下的N篇文章,谢谢~!

阅读 3.5k
3 个回答
Article.object.filter(category=category).order_by('?')[:5]

思路是这样的,可以取得文章数据库表的id, 从一个list中循环随机取id

>>> import random
>>> random.choice(range(1, 20))
5

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏