Opa Fabio,

> Estou tentando fazer um template para gerar uma saída xml com as
> informações guardadas em um objeto do tipo Event. Eis o código:
> 
> [snipped code]
> 
> Quando eu dou "evento/Title", aparece o título do evento. Agora
> "evento/event_url" dá erro. Eu olhei lá no arquivo 'event.py' e existe
> lugares onde 'event_url' aparece. No template 'event_view' ele chama a
> Url externa como 'here/event_url'.

funciona no template pois 'event_url' é um método presente nos
objetos do tipo evento e 'here/event_url' nada mais é do que a
chamada no método event_url em here, no caso o próprio evento.

> Alguém sabe como tirar o link externo armazenado no objeto 'Event'?

Considerando que o seu código faz uma busca no catálogo e que o campo
'eventUrl' (cujo accessor é o tal event_url) presente no schema do
ATContentTypes/content/event.py não define um índice no catálogo para
este campo, você tem duas opções:

a) sendo 'evento' uma referência a um dos itens retornados pela busca
no catálogo, acessar o objeto que o item referencia e então a partir
do objeto, chamar o método accessor (event_url):

  python:evento.getObject().event_url()

b) adicionar um nova coluna de metadados (metadata) no catálog, com o
nome de 'event_url' e atualizar o catálogo, então você poderia usar
simplesmente:

  evento/event_url

Nesse caso, ele estaria acessando o atributo event_url presente no
item do catálogo que referencia o evento em questão e não o próprio
evento.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology

Responder a