2012-08-11 44 views
0

我想通过2名名单Django的模板,但只有第一个被渲染 这是index.html的:通2个或多个变量来Django的模板

enter code here 
{% if latest_poll_list %} 
<ul> 
{% for poll in latest_poll_list %} 
    <li>{{ poll.question }}</li> 
{% endfor %} 
</ul> 
{% else %} 
<p>No polls are available.</p> 
{% endif %} 

{% if menu_items_list %} 
    <table id="menu_items_list"> 
<tr> 
    {% for item_url, item_name in menu_items_list %} 
    <td><a href="item_url">item_name</a> 
    {% endfor %} 
    </tr> 
</table> 
{% endif %} 
<h3>{{ index_name }}</h3> 

这就是URL配置:

urlpatterns = patterns('zzz.polls.views', 
url(r'^$', 
    ListView.as_view(
    queryset=Poll.objects.order_by('pub_date')[:5], 
    context_object_name='latest_poll_list', 
    template_name='index.html')), 

和意见:

def index(request): 
    latest_poll_list = Poll.objects.all().order_by('pub_date')[:5] 
    index_name = 'INDEX PAGE' 
    menu_items_list = ['somesite.com', 'Googy') for x in xrange(5)] 
    return render_to_response('index.html', {'latest_poll_list': latest_poll_list, 
              'menu_items_list' : menu_items_list, 
              'index_name': index_name}) 

我在哪里犯错?

回答

1

LC的语法错误。

>>> ['somesite.com', 'Googy' for x in xrange(5)] 
    File "<stdin>", line 1 
    ['somesite.com', 'Googy' for x in xrange(5)] 
          ^
SyntaxError: invalid syntax 
>>> [('somesite.com', 'Googy') for x in xrange(5)] 
[('somesite.com', 'Googy'), ('somesite.com', 'Googy'), ('somesite.com', 'Googy'), ('somesite.com', 'Googy'), ('somesite.com', 'Googy')] 
+0

我找到了答案,但是要感谢任何想要帮助的人 – Viszman 2012-08-11 07:50:40