Как получить доступ к результатам сбора наилучшим образом? - PullRequest
1 голос
/ 09 марта 2012

Я пытаюсь отобразить результат коллекции на некоторых страницах.Я понимаю, что не могу отобразить код шаблона страницы вне контекста папки коллекции, так как он дает ошибку атрибутов (я использовал context.collection-id.getCatalog ()).Любая идея или указатель полезны.

results.pt

<tal:block repeat="objectItem python:context.queryCatalog()" >
  <a tal:attributes="href objectItem/getURL" ><tal:title content="objectItem/Title" />       </a><br/>
   <tal:block tal:define="obj objectItem/getObject;" >
          <tal:block content="structure obj/text/output" />
   </tal:block>

Но

, если я делаю что-то подобное ниже формы вне контекста папки коллекциитогда он работает нормально.

 <tal:block tal:content="structure context/collection-id/results" />

Результаты - это шаблон страницы внутри папки коллекции, в которой указан код, упомянутый выше.

1 Ответ

4 голосов
/ 09 марта 2012

Просто замените context ссылкой на вашу коллекцию:

<tal:block repeat="objectItem context/collection-id/queryCatalog">

В методе queryCatalog нет ничего волшебного, но вам нужно вызывать его на самом экземпляре Collection, а не на произвольномконтекст.: -)

...