Генерация страниц Docpad из JSON Arrary или аналогичных
Есть ли способ настроить DocPad для генерации страниц, начиная с массива json, сохраненного во внешнем файле (или встроенной строке), а не из коллекции файлов?
Чтобы уточнить, детали показа сообщений, которые я получаю из файла JSON, см. Ниже.
вместо этого:<% for post in @getCollection("html").findAll({ relativeOutDirPath: 'posts' }).toJSON(): %>
Я использую это:<% for post in JSON.parse @include("posts.json"): %>
Хорошо. Теперь я бы сгенерировал страницы сообщений непосредственно из этого JSON, а не создавал страницу для каждого сообщения, как в примере.
Например, я хотел бы создать страницу с URL-адресом /posts/-199UR.INT, если в JSON существует {urlname}, например:
[
{ "id": "1", "urlname": "prod1", "metadata": { "title": "val1" } },
{ "id": "2", "metadata": null },
{ "id": "3", "urlname": "prod3", "metadata": { "title": "val1b", "prop2": "val2b" } }
]
Я бы сгенерировал страницы /posts/prod1.html и /posts/prod2.html с метаданными в свойствах метаданных.
Спасибо за ответы..;)
PS Отличная работа!!!!!!!
1 ответ
В настоящее время не существует официального способа ввода данных в DocPad в базе данных памяти, кроме анализа в файловой системе на src
каталог (как мы все привыкли). ОДНАКО, эта функция (называемая импортерами) является следующей большой задачей для DocPad, вы можете найти проблему здесь.
А пока вы можете включить в данные шаблона JSON, который подходит для списков содержимого, но не подходит для предоставления отдельных документов для каждой записи.