1

これを行う方法について少し助けが必要です。私はランダムに質問を生成する投票を作成しました。ユーザーは 1 ~ 5 で評価します。「グリーン」はいかがですか?単語は配列からランダムに抽出されます。

各単語に対してユーザーが選択した値を格納するビュー/モデルを作成するにはどうすればよいですか? 出力は次のようになります (スコアは色ごとに平均化されます)。

Blue 3.4
Green 4.1
Red 2.8 
4

2 に答える 2

1

色を保存するモデルを作成できます。

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

そこに色を保存します。

評価可能にするには、Django の優れた評価プラグインの 1 つを使用するだけです。たとえば、django-ratingsです。もちろん独自の評価アプリを作成することもできますが、インターネットにはすでにたくさんあると思いますので、使用しないでください。

h番目

于 2012-09-19T12:58:18.997 に答える
0

基本的に、色を隠しフィールドに入れるか、セッションに保存する必要があります ( 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を参照してください。

于 2012-09-19T12:49:04.870 に答える