我们可以在Django的同一视图中多次查询模型吗?

时间:2015-05-19 04:17:47

标签: python django

我一直在制作视频分享网站。我正在使用Django 1.6。有一个页面,用户可以在其中观看任何特定视频。此外,“热门视频”的一部分就在旁边,其中根据观看次数列出了热门视频。我想知道我们是否可以在单个视图函数中多次查询同一模型。我的代码如下..

<html>
<body>
<table border="1">
    <tr>
        <td></td>
        <td>1</td>
    </tr>
    <tr>
        <td>2</td>
        <td>3</td>
    </tr>
</table>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

是的,您可以根据需要在单个视图中查询相同的模型。

答案 1 :(得分:0)

是的,您可以多次查询一个模型。您的方案的最佳方式是使用模型管理器。

class PopularManager(models.Manager):
    def get_queryset(self):
        return super(PopularManager, self).get_queryset().filter(views__gt=100)

class Video(models.Model)
    ....
    popular = PopularManager()

你可以获得这样的热门视频。

popular_videos = Video.popular.all()