SORU
26 AĞUSTOS 2009, ÇARŞAMBA


django şablon sistemi, bir model içinde fonksiyon çağırma

Bir şablon gibi, benim modelden bir işlevi çağırmak istiyorum

class ChannelStatus(models.Model):
 ..............................
 ..............................

    def get_related_deltas(self,epk):
    	mystring = ""
    	if not self.get_error_code_delta(epk):
    		return mystring
    	else:
    		for i in self.get_listof_outage():
    			item = i.error_code.all()
    			for x in item:
    				if epk == x.id:
    					mystring= mystring  " " str(i.delta())
    	return mystring

Ve şablondan bu aramak istiyorum: varsayalım görüntülenirken, channel_status_list olarak geçiyorum

channel_status_list = ChannelStatus.objects.all()

{% for i in channel_status_list %}
  {{ i.get_related_deltas(3) }}
{% endfor %}

Bu işe yaramazsa, hiçbir şey tüketir, ama eğer parametre varsa ne bulmak couln bir işlev(ler) aramak için mümkün duyuyorum

Şerefe

CEVAP
26 AĞUSTOS 2009, ÇARŞAMBA


Şablon parametreleri ile bir fonksiyonu çağırmak yok. Sadece görünümünde yapabilirsiniz. Alternatif olarak bir yazarsın şöyle olabilir custom template filter,:

@register.filter
def related_deltas(obj, epk):
    return obj.get_related_deltas(epk)

Şimdi şablonda bunu yapabilirsiniz:

{% for i in channel_status_list %}
  {{ i|related_deltas:3 }}
{% endfor %}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • hockeywebcasts

    hockeywebcas

    31 EKİM 2012
  • Hudson Music

    Hudson Music

    13 Mart 2007
  • ravinderosahn

    ravinderosah

    20 Temmuz 2009