2013-08-26 65 views
0

我對django不是很熟悉,但我希望這裏有人能告訴我是否有可能。僅顯示django中沒有編號的某些照片畫廊

我目前正在打電話的一組最新的4個照片畫廊這樣的:

{% load photogalleries %} 
       {% get_latest_galleries_from_set front-page as photo_gallery limit 4 %} 
       {% for gallery in photo_gallery %} 
        <div class="rightSidePairThumb"> 
         <a href="{{ gallery.get_first_photo.get_absolute_url }}"><img src="{% mogrify gallery.get_first_photo.get_photo.get_photo_url resize '900x750' filter 'sharpen' %}" alt="{{ gallery.name }}" class="link"/></a> 
         <div class="rightSidePairCat">PHOTOS</div> 
         <div class="coolName"><a href="{{ gallery.get_first_photo.get_absolute_url }}">{{ gallery.name }}</a></div> 
         <hr class="style-two"> 
        </div> 
       {% endfor %} 

我不希望再一次全部調用4個最新的畫廊,而是得到一個在不同的div時間在我的頁面上。因此,在一個div中,我想打電話給最新的畫廊。在另一個div中,我想打電話給第二個最新的畫廊。在另一個div中,只有第三個最新的畫廊,等等。

我試着用'排除'的id,但我不知道畫廊ID的。如果有人知道如何完成我想要做的事情,我會永遠感激。

我可以使用css同級組合器(我在我的頁面上的其他地方)完成此操作,但代碼非常長,看起來......哈克。我希望django有一個更簡單的方法。

再一次,我對django不是很熟悉,所以在noob上輕鬆一下。

在此先感謝!

回答

0

您可以通過索引這樣的訪問特定的畫廊名單:

{{ photo_gallery.0 }} 
{{ photo_gallery.0.get_first_photo.get_absolute_url }} 
0

你或許可以完成你想要的使用{% if forloop.counter0 == X %}檢查你是哪個環路。我不確定你的意思是「我不知道畫廊編號」,{{ gallery.id }}不起作用?反正..

一種可能性:

{% for gallery in galleries %} 
    <div class="{% if forloop.first %}latest-gal{% elif forloop.counter0 == 1 %}second-to-latest-gal{% elif forloop.last %}oldest-gal{% else %}third-to-latest-gal{% endif %}"> 

雖然這看起來^非常討厭。相反,我只想用{{ forloop.counter0 }}在您的ID,如建議:

{% for gallery in galleries %} 
    <div id="gallery-{{ forloop.counter0 }}"> 

通常我會扔在<div id=gallery-"{{ gallery.slug }}{{ gallery.id }}但你似乎只想要最新的4個畫廊所以這就是爲什麼我會用{{ forloop.counter0 }}。它將返回<div id="gallery-0">爲最新的畫廊等。