2013-06-07 1 views
1

У меня есть папка с именем «клиенты» с 30 изображениями внутри, и я хочу вернуться с docpad 10 случайных изображений каждый раз при загрузке страницы. это возможно? Я искал возврат случайных файлов с помощью docpad и не нашел никакой документации об этом.Как я могу получить 10 случайных документов на docpad?

ответ

2

Скелет docpad "Kitchen Sink" имеет пример создания случайного числа при каждой загрузке страницы. См. Страницу Dynamic Content.

Ключевым моментом является установка динамического свойства в метаданных страницы в значение true (dynamic: true). Вам также необходимо убедиться, что у вас установлен плагин docpad «cleanurls» (docpad-plugin-cleanurls) - не сразу видно.

После этого это просто вопрос использования стандартного javascript Math.random. Я использую что-то вроде этого, чтобы получить случайный пост в моем .eco файле

<%=i = Math.floor((Math.random()*10))%> 
<% document = @getCollection('posts').toJSON()[i] %> 

Надежда, что помогает

Edit - Джейд Пример

- var i = Math.floor((Math.random()*10)) 
    - var doc = getCollection('posts').toJSON()[i] 

Тире перед операторами «Var» это важно. см. https://github.com/visionmedia/jade#a8

+0

и как мне написать это в нефритовом? я попробовал, но не повезло ... может быть, такие вещи, как этот, хороши, чтобы добавить к основной конфигурации? –

+0

добавлен пример нефрита. –

+0

Есть ли шанс отметить это как ответ? Может помочь другим людям, смотрящим на это сообщение –