Мне любопытно, почему это происходит.Я использую шаблоны Mako для итерации по кортежу, который содержит несколько словарей, которые, в свою очередь, содержат информацию о ссылках:
links = (
{
'path' : request.route_url('home'),
'text' : 'Home'
},
{
'path' : "http://www.microsoft.com",
'text' : "Microsoft"
}
)
Если я отправлю вышеупомянутое в представление, все будет работать как ожидалосьссылки отображаются.Однако, если я удаляю вторую ссылку:
links = (
{
'path' : request.route_url('home'),
'text' : 'Home'
}
)
, я получаю исключение: TypeError: string indices must be integers, not str
, если я ставлю запятую после конца словаря, все снова начинает работать.Кто-нибудь может объяснить, что происходит?
Редактировать Фрагмент шаблона Мако
<nav>
% for link in links:
<a href="${link['path']}">${link['text']}</a>
% endfor
</nav>