2013-05-06 1 views
1

Скажем, я создаю блог с DocPad, в котором есть листинг и куча сообщений (в отфильтрованной коллекции). В листинге отображается начало содержимого каждого сообщения с использованием document.contentRenderedWithoutLayouts. (Как?) Доказывает ли DocPad все сообщения, прежде чем показывать их?В каком порядке документы DocPad выдают?

Быстрый отладочный пробег с docpad -d --env static run предполагает, что листинг отображается каждый раз, когда создается новое сообщение. Это верно?

Что делать, если есть цикл? Скажите, что одна из сообщений хочет листинг contentRenderedWithoutLayout?

ответ

3

:) это где DocPad получает супер умный :)

Всякий раз, когда вы делаете шаблон вспомогательный вызов для извлечения документа, который не является вашим собственным, мы принимаем к сведению, что и установите referencesOthersmeta data property в действительности. Затем мы переходим к отображению всех документов, которые сначала не ссылаются на других, а затем отображают все те, которые ссылаются на другие.

Именно поэтому при изменении макета мы будем регенерировать все документы, которые его используют. Также, когда вы изменяете сообщение в блоге, мы также будем регенерировать любые записи этого сообщения в блоге.

Если у вас есть круглые ссылки, мы уведомим вас о том, что такое возникновение произошло, и рекомендуем вам увеличить renderPassesconfiguration property, чтобы гарантировать, что он будет достаточно полезен.

Точный код за рендер пассов здесь: https://github.com/bevry/docpad/blob/v6.32.0/src/lib/docpad.coffee#L2567-L2579

+0

Спасибо! На самом деле меня очищает :) – hurrymaplelad