14

数週間以来、私は Python と Django を学んでいます。ここまでは、他のユーザーの質問と回答を読むだけで十分でしたが、ここで初めての自問自答の時が来ました。

私はできる限り私の問題を説明しようとします。私の問題は、必要なデータを照会または取得できないことです。

ForeignKey によってクラス Entry に関連付けられている Gallery に関連付けられているクラス Image の最初のオブジェクトの URL を取得したいと考えています。

これまでのmodels.pyは次のとおりです。

class BlogEntry(models.Model):
   ...
   title = models.CharField(max_length=100)
   ...

class Gallery(models.Model):
   entry = models.ForeignKey('BlogEntry')

class Image(models.Model):
  gallery = models.ForeignKey('Gallery')
  picture = models.ImageField(upload_to='img')

景色:

def view(request):
  return render_to_response('mainview.html', {
    'entryquery': BlogEntry.objects.all(),
    }
)

テンプレート:

{% for item in entryquery %}
  <h1>{{ item.title }}</h1>
  <img src="{{ item.WHAT TO ENTER HERE? :) }}" />
{% endfor %}

私が欲しいものは明らかですか?誰かが私を助けてくれませんか、可能であれば簡単な説明を書いてくれませんか?

挨拶バスティアン

4

2 に答える 2

21

template の他の属性と同じように、関連するメンバーにアクセスできるため、次のようなことができます。ただし、BlogEntry で検索して適切な画像を返すメソッドを定義する方が簡単かもしれません。item.gallery_set.all.0.image_set.all.0.picture.imgitem.first_image

于 2012-06-15T19:25:35.093 に答える