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

  • Dellbear816

    Dellbear816

    4 Mart 2008
  • Modus Recordings

    Modus Record

    26 Kasım 2008
  • vgeller1

    vgeller1

    22 Kasım 2009