0

我已经阅读了 Django 的基本投票教程,我意识到我可以在这里和那里改变一些东西,并从中制作一个 HotOrNot/FaceMash 风格的网站。但是,由于我还是个菜鸟,我只能想出它的概念——我没有办法知道该怎么做。所以这个概念是,不是显示投票的所有选择,而是只显示两个随机选择(不应该是相同的)。此外,需要有一种方法可以从计算机批量上传或从外部存储/服务器获取所有图像作为投票的选择。谁能告诉我如何做到这一点?非常感谢你。

4

1 回答 1

0

好吧,这还不清楚,但让我们试一试。我猜你想比较两张随机的照片,让用户选择最好的。我想到了一种简单的方法来做到这一点,不一定使用民意调查应用程序。

首先,创建一个模型来存储图像。例如:

class Image(models.Model):
  picture = models.ImageField("Face picture", max_length=255, upload_path=<your upload path function>)

然后不要使用民意调查,而是自己制作:

class Match(models.Model):
  winner = models.ForeignKey('yourapp.Image')
  loser = models.ForeignKey('yourapp.Image')

制作表单并将投票结果保存在 Match 实例中。要知道一张图片显示了多少次,只需查找获胜者或失败者是图片的匹配行:

times_shown = Match.objects.filter(Q(winner=pic)|Q(loser=pic)).count()

然后同样适用于知道一张图片有多受欢迎。如果它经常是赢家,那么你可以假设它看起来很漂亮。希望这可以帮助。

于 2012-05-11T12:52:46.510 回答