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

  • Matt Stokes

    Matt Stokes

    22 Ocak 2008
  • Sarah's YouTube Channel

    Sarah's YouT

    27 Temmuz 2009
  • The Exploiteers

    The Exploite

    4 Ocak 2011