0

私は dcramer のdjangoratingsを使用して評価システムを実装しようとしていますが、彼が言及しているテンプレートタグのいくつかを使用すると問題が発生します。

私のモデルは次のとおりです。

class Thing(models.Model):
    rating = RatingField(range=3)

ここで説明されているように、パッケージに含まれているテンプレートタグを使用してユーザーの投票を取得しようとしています:

rating_by_request

ユーザーが特定のオブジェクトにキャストした投票を取得し、コンテキスト変数に格納します。ユーザーが投票していない場合、コンテキスト変数は 0 になります。

{% rating_by_request request on instance.field as vote %}

rating_by_user

ユーザーが特定のオブジェクトにキャストした投票を取得し、コンテキスト変数に格納します。ユーザーが投票していない場合、コンテキスト変数は 0 になります。

{% rating_by_user user on instance.field as vote %}

間違った使い方をしているかもしれませんが、

{% rating_by_user user on Thing.rating as vote %}
{{ vote }}
{% rating_by_request request on Thing.rating as rate %}
{{ rate }}

.. 値を返さないため{{ vote }}です{{ rate }}。これらのタグを使用して、説明されているオブジェクトを取得するにはどうすればよいですか? ありがとうございました!

4

2 に答える 2

1

ビューコンテキストthingまたはThing変数で設定しますか?ビューの場合'thing': Thing.objects.get(...)

{% rating_by_user user on thing.rating as vote %}
{{ vote }}
{% rating_by_request request on thing.rating as rate %}
{{ rate }}
于 2013-01-15T20:02:42.763 に答える
-1

{{}} このタグは、情報を表示するために使用されます。ユーザーから情報を取得したい場合は、.html ファイルのようなものを試す必要があります

<form action="address of your view" method="get">
{%csrf_token%}
<input type="text" name="vote"/ >
<input type="submit" value="ok">
</form>

あなたの見解では

vote_val=request.GET.get('vote','default_value')

投票はvote_valに保存されるようになりました

于 2013-01-15T19:41:40.873 に答える