Я использовал docpad для предварительного создания внешнего приложения html/js (используя docpad generate --env static
). После нескольких зависаний и исправления ошибок от balupton теперь все работает отлично и экономит мне много времени. Я просто копирую эти файлы на существующий сервер Apache для развертывания.
Теперь я также создал серверное приложение node.js/express.js, которое использует простой API для передачи данных клиенту. Этот код был создан и запущен независимо от файлов docpad/static, сгенерированных, как я говорил выше.
Теперь я хотел бы объединить эти два. Как это обычно делается в мире docpad? Я вижу несколько вариантов:
1) Внутренний и внешний код хранятся отдельно. Docpad используется для создания внешних статических файлов, а для обслуживания статических файлов и данных используется отдельное внутреннее приложение. На сервер для развертывания копируются только статические файлы и экспресс-приложение.
2) Внутренние исходные файлы создаются вместе с внешними файлами и копируются на сервер для развертывания. Я предполагаю, что это почти то же самое, что и № 1, за исключением того, что каталог src/files должен включать файлы приложения express.js и позволит мне запускать препроцессоры на внутреннем источнике.
3) Мое внутреннее приложение requires
docpad (которое создает каталог out/
и добавляет промежуточное ПО docpad) затем запускает сервер (что-то вроде показанного здесь: https://github.com/bevry/docpad/issues/342).). Это упростило бы тестирование, но всю структуру каталогов проекта (src/
, out/
и все остальные) нужно было бы скопировать на сервер для развертывания.
Я не спрашиваю подробностей о том, как это сделать, но задаюсь вопросом, что считается философией docpad по этому поводу. Есть ли еще один вариант, который я пропустил?
Спасибо.
app.js
)? В корне папки проекта рядом сdocpad.coffee
или в каталогеsrc/
? Тогда как мне заставить docpad использовать это вместо встроенного сервера во время тестирования. Спасибо за вашу помощь. - person hypercubed   schedule 07.05.2013