我正在使用帶有django的模板。我在沒有呈現Context的情況下遇到問題。 meta_k爲空。 meta_description不是。django模板不會呈現完整的上下文
t = get_template('projects.html')
html = t.render(Context({
'completed': completed,
'current':current,
'description': sp.description,
'project_title':sp.name,
'img':images,
'meta_desc': sp.meta_description,
'meta_k:': sp.meta_keywords
}))
我可以在eclipse中以調試模式啓動服務器,所以我知道sp.meta_keywords不爲空。這裏是我稱之爲projects.html中的代碼的地方:
{% block meta_keywords %}<br>
{% if meta_k %}<br>
{{ meta_k }}<br>
{% else %}<br>
Venkat, Rao, engineer, inventor, entrepreneur, projects, blue dart, control systems, labview<br>
{% endif %}<br>
{% endblock %}
當我知道meta_k不應該爲null時,默認爲else。完整的代碼可以在谷歌代碼上找到here。
我在做什麼錯?
如果結果是一個空字符串或空列表,或者任何在Python中包含'None'的計算結果爲False,則它將進入else部分。 – 2010-10-03 04:03:55
我知道結果不是空的或無,因爲我在監視窗口中看到變量的值 – 2010-10-03 04:47:13
很可能它是代碼中的錯誤,然後在django中,可以嘗試將sp傳遞到上下文並在projects.html中輸出值,所以你可以確定什麼價值即將到來? – 2010-10-03 04:58:09