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

  • Break

    Break

    10 Aralık 2005
  • iMasterful

    iMasterful

    11 EYLÜL 2009
  • sk8ingis4me

    sk8ingis4me

    16 Mart 2006