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

  • CommonArtisan

    CommonArtisa

    7 Temmuz 2012
  • TheDigiCraft

    TheDigiCraft

    25 NİSAN 2011
  • TheForgottenGamer1

    TheForgotten

    28 AĞUSTOS 2009