Я использую docpad для предварительного создания внешнего приложения html/js (используя docpad generate --env static
). После нескольких зависаний и исправления ошибок от балуптона он теперь отлично работает и сэкономит мне много времени. Я просто копирую этот файл на существующий сервер Apache для развертывания.Интеграция приложения express.js и docpad
Я также создал back-end приложение node.js/express.js, которое использует простой api для передачи данных клиенту. Этот код был создан и запускался независимо от файлов docpad/static, сгенерированных, как я говорил выше.
Теперь я хотел бы объединить эти два. Как это обычно делается в мире docpad? Я вижу несколько вариантов:
1) Внутренний и внешний код хранятся отдельно. Docpad используется для создания исходных статических файлов, тогда отдельное фоновое приложение используется для обслуживания статических файлов и данных. Только статические файлы и экспресс-приложение копируются на сервер для развертывания.
2) Исходные исходные файлы создаются вместе с файлами front-end и копируются на сервер для развертывания. Я думаю, что это почти то же самое, что и # 1, за исключением того, что каталог src/files должен включать файлы приложения express.js и позволял мне запускать предварительные процессоры на исходном источнике.
3) Мое фоновое приложение requires
DocPad (который генерирует каталог out/
и добавляет DocPad промежуточного программного обеспечения), а затем запускает сервер (что-то вроде показанных здесь: https://github.com/bevry/docpad/issues/342). Это упростит тестирование, но вся структура каталога проекта (src/
, out/
и все) должна быть скопирована на сервер для развертывания.
Я не спрашиваю конкретно о том, как это сделать, но задаюсь вопросом, что считается философией docpad на этом. Есть ли еще один вариант, который я пропустил?
спасибо.
Помогает ли http://stackoverflow.com/questions/16389994/static-vs-dynamic-content-in-docpad-system-how-to-create-dynamic-content/16390466#16390466? – balupton
Привет, балуптон. # 3 в связанном вопросе закрыть. Я могу добавить свои пользовательские маршруты в docpad.coffee, но я думаю, что это означает, что мне нужно развернуть всю структуру древовидной структуры docpad (так же, как и мой № 3 выше). Я думаю, что в конечном итоге я бы хотел развернуть только созданный статический контент и один или два файла node.js, чтобы запустить статические файлы и динамический контент с помощью ajax-запроса. – hypercubed
Вопрос становится, где я могу поставить сервер, генерирующий javascript (назовите его 'app.js')? В корневой папке проекта рядом с 'docpad.coffee' или в каталоге' src/'? Затем, как мне получить docpad, чтобы использовать это вместо встроенного сервера во время тестирования. Спасибо за вашу помощь. – hypercubed