Eu criei um laço para acrescentar categorias numa lista de elementos, composta por identificador e rótulo, que é usada posteriormente na página numa templatelist.
Embora ao id do elemento seja atribuído o valor correto, ao rótulo (label) do segundo elemento não é atribuído o valor correto.
Ou seja, o category_name do segundo elemento repete o valor do category_name do primeiro elemento.
Segue abaixo a parte do código que adiciona as categorias na lista de elementos.
ns_log Notice "[videos::get_categories -package_id $package_id]"
foreach {category_id category_name } [videos::get_categories -package_id $package_id] {
lappend list_elements cat_${category_id} {
label "$category_name"
display_template { @videos.cat1@ }
}
}
ns_log Notice "ELEMENTS: $list_elements"
e o arquivo de log error.log mostra
[22/Jun/2010:18:50:56][13161.3045104528][-default:52-] Notice: 3188 | 3203 Licensa 3195 Tipo
[22/Jun/2010:18:50:56][13161.3045104528][-default:52-] Notice: ELEMENTS: image {
label " "
display_template {
}
} name {
label "MESSAGE KEY MISSING: 'videos.Name'"
display_template {
@videos.video_name@
}
} autor {
label "MESSAGE KEY MISSING: 'videos.Author'"
display_template {
@videos.autor@
}
} description {
label "MESSAGE KEY MISSING: 'videos.Description'"
display_template {
@videos.video_description@
}
} cat_3203 {
label "{$category_name}"
display_template { @videos.cat1@}
} cat_3195 {
label "${category_name}"
display_template { @videos.cat1@}
}
Como dito acima, o id dos elementos são mostrados corretamente
"cat_3203" e "cat_3195", mas os rótulos não são.
No navegador, ao invés de mostrar "Tipo" e "Licensa" como duas colunas da templatelist como temos no log
[22/Jun/2010:18:50:56][13161.3045104528][-default:52-] Notice: 3188 | 3203 Licensa 3195 Tipo
São mostradas duas colunas mas com o rótulo repetido com o valor da primeira coluna "Tipo"
Parece, que o identificador category_id segue a sequência do laço mas o rótulo category_name não segue.
Como eu conserto a variável $category_name ?
Autor: iuri sampaio
22 comentários