1

接続しているユーザーのすべてのお気に入りを表示したいと思います。各ユーザーは自分のお気に入りを追加できます。このアクションを管理するモデルを作成しました。これには、2 つの外部キーがあります。1 つはユーザー用、もう 1 つは「お気に入り」用です。

models.py

class Favorite(models.Model):
    user = models.ForeignKey(User)
    drud = models.ForeignKey(Drud)

    def __unicode__(self):
        return self.drud.secure_key

私の見解では、接続しているユーザーのお気に入りのDrudをすべて表示したいと考えています。私はそのようなことをしようとしました:

ビュー.py

favorite = Favorite.objects.filter(drud=[d.secure_key for d in Drud.objects.filter(user=request.user)])

しかし、それはうまくいきます...

4

1 に答える 1

0

できるよ:

fav_druds = request.user.favorite_set.values_list('drud', flat=True)

テンプレートでは、次のことができます。

{% for drud in fav_druds %}
    {{drud.id}}: {{drud.secure_key}}
{% endfor %}

編集:

favs = request.user.favorite_set.all()

{% for fav in favs %}
    {{fav.drud.id}}: {{fav.drud.secure_key}}
{% endfor %}
于 2013-05-15T19:51:15.100 に答える