ローカルハイキングをカタログするサイトがあり、ユーザーはハイキング中であることを記録できます。私はハイキングを含む検索ページを持っています。私が表示しようとしているフィールドの1つは、ハイキング中のすべての人々のリストです。私はこれをハイキングの個々の詳細ページ内で把握しましたが、検索ページにこの情報を表示するために、ハイキングを印刷しているクエリーセット内に新しいクエリーセットを作成する方法を理解することはできません。ここでテンプレート内の外部キー関連インスタンスの一覧表示(クエリセット内のクエリセット)
は、いくつかのコードです:
models.py:
class Hike(models.Model):
name = models.CharField(max_length=255, unique=True)
slug = models.SlugField(unique=True)
...
class UserLog(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
hike = models.ForeignKey(Hike, on_delete=models.CASCADE)
はviews.py:
def hike_list(request):
qs = Hike.objects.all()
... some other filters here
?-->users = UserLog.objects.filter(id=qs.id)
テンプレート:
{% for qs in qs %}
{{ hike.name }}{{ hike.other_details_and_stuff }}
?----> {% for users in hikes %}{{ user.name }}{% endfor %}
{% endfor %}
ここで個体内作業コードですハイキングの詳細ページ:
views.py:
def hike_detail (request, slug)
users = UserLog.objects.filter(hike__slug=slug)
私はその上でクエリセットを実行し、クエリセット内の個々の項目からスラグを呼ぶにはどうすればよいですか?
「climb」または「slug」フィールドは表示されません。ですから、 'qs'クエリのハイキングに関連するすべてのユーザを設定したいのですか? – schwobaseggl
Woops、申し訳ありません。それは登りではなく、登りであるはずです。私はオリジナルを編集します。しかし、はい、私はその特定のハイキングに関連付けられているすべてのユーザーをqsクエリーセットに入れたいと思います。 – Josh
私の他の質問はどうですか?正確に何を照会しようとしているのかはわかりません。 – schwobaseggl