2016-11-09 4 views
1

私はTangoという本を使ったチュートリアルの途中です。Djangoについてはできるだけ多くの情報を得ることが絶対に難しいです。{%load rango_template_tags%}のテンプレートを破る

今、私はすべてのカテゴリの一覧を示しますテンプレートを設定しようとしていますが、私はこの行を取得しています理由は考え、私はこの本でそれをチェックした一切を持たないエラー

invalid syntax (rango_template_tags.py, line 8) 

を取得します5 +回しかし、私は間違っている場所を見て何かを見つけることができません。誰も私にこのエラーが出ている理由を教えてもらえますか?

Base.html

{% load rango_template_tags %} 
<div> 
    {% block sidebar_block %} 
     {% get_category_list %} 
    {% endblock %} 
</div> 
# This file has more within it these are the new pieces of code that break the template system. If these are in it wont work. 

rango_template_tags

from django import template 
from rango.models import Category 

register = template.Library() 

@register.inclusion_tag('rango/cats.html') 
def get_category_list(): 
return {'cats' Category.objects.all()} 

cats.html

<ul> 
    {% if cats %} 
    {% for c in cats %} 
     <li><a href="{% url 'show_category' c.slug %}">{{ c.name }}</a></li> 
    {% endfor %} 
    {% else %} 
     <li><strong> There ar eno categories presen. </strong></li> 
    {% endif %} 
</ul> 
+1

この行には少なくとも2つのエラーがあります。もう一度チェック。 –

+0

@DanielRoseman詳細に進んでください。 –

+0

あなたは本を5 +回チェックしたが、どの本がそれなのだろうか? 'return'行をインデントし、辞書キー(' 'cats'')の後にコロンを挿入します。 – Selcuk

答えて

1
カテゴリー:Pythonの辞書に

は、各キーは:)

は{ '猫' に{ '猫のCategory.objects.all()}からあなたのreturn文を変更し

(コロンによってその値から分離されています。 objects.all()}およびコード内のコードは、と識別される必要があります。

from django import template 
from rango.models import Category 

register = template.Library() 

@register.inclusion_tag('rango/cats.html') 
def get_category_list(): 
    return {'cats': Category.objects.all()} 
+0

回答の質を向上させるための説明をお願いします。 [良い回答を書く](http://stackoverflow.com/help/how-to-answer)のヘルプはこちらを参照してください。 – jacefarm