在Django中为随机单词分配值

2024-04-18 06:31:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要一点帮助来做这件事。我创建了一个民意测验,随机生成一个问题,比如“你觉得‘蓝色’怎么样?”用户将从1-5评分。会出现一个新问题,比如“你觉得‘绿色’怎么样?” 单词是从数组中随机抽取的。你知道吗

如何开始编写视图/模型来存储用户为每个单词选择的值? 输出应该是这样的(每种颜色的平均分数):

Blue 3.4
Green 4.1
Red 2.8 

Tags: 用户模型视图颜色greenbluered数组
2条回答

可以创建模型来存储颜色:

class Color(models.Model):
    name = CharField(...)

把你的颜色储存在那里。你知道吗

为了使它具有可评分性,只需使用Django的一个优秀的评分插件,例如django-ratings。当然,你也可以创建自己的评级应用程序,但我认为在互联网上已经有一个植物,所以为什么不使用一个呢?你知道吗

hth公司

基本上,您应该将颜色放在一个隐藏字段中,或者将其存储在会话中(请参见https://docs.djangoproject.com/en/dev/topics/http/sessions/

为了得到一个平均值,您的模型必须要么存储所有投票,要么存储当前平均值+到目前为止的投票数,这样您就可以计算新的平均值

new_avg = ((old_avg * votes) + new_vote) / (votes++))

有关处理POST请求的信息,请参见https://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpRequest.POST

相关问题 更多 >