2015-06-05 27 views
21

Bu koduDjango Şablon Filtre sözdizimi hatası

{% load sekizai_tags static compress i18n %} 
[...] 
<title>{{ title|default:"nothing" }}</title> 

kullanarak django en 'varsayılan' filtrenin yerleşik kullanmaya çalışıyorum Ama bana aşağıdaki özel durum verir

django.template.base.TemplateSyntaxError: default requires 2 arguments, 1 provided 

ben aşağıdaki ayarları kullanıyorum Benim Şablon Geri Bildirimi için ……………………………………………………………………………………………………………………………………………………… .. Zaman bu örnekte olarak verilir https://docs.djangoproject.com/en/1.8/ref/templates/builtins/

:

{{ value|default:"nothing" }} 

Ben de emin ayrılmış bir anahtar kelime değildir yapmak, başlık var adını değiştirmeye çalışmıştır.

+0

bu yardımcı olabilir Oku https://groups.google.com/forum/#!topic/django-users/: Bu bir istisna atar

{{ title|default:"nothing" }} 

m4w-RNt-DOg – chandu

+1

unforunatly yardımcı olmadı, aslında değerler için tırnak kullanıyordum, "hiçbir şey" – Iwan1993

+0

Sormaktan nefret ediyorum ... ama bu satırın suçlu olduğundan emin misin? Bu şablonda başka filtre veya geçici etiketiniz var mı? Sorunuzda şablonunuzun daha fazlasını gösterebilir misiniz? – rnevius

cevap

1

deneyin: değişken 'Yok' ise

{{ title|default_if_none:"nothing" }} 

default_if_none verilen dize gösterecektir. Değişken Yanlış, yani boş dizeleri, boş listelerine vb olarak değerlendirilirse

varsayılan dize görüntüler

Ayrıca

değil default_if_none kullanmalısınız eğer siz, bir bağlamda başlık değişken göndermek emin olun

31

Kolondan sonra boşluk olmadığından emin olun.

Bu doğrudur:

{{ title|default: "nothing" }}