Система шаблонов CouchDB: расширение с отдельным нижним колонтитулом и заголовком

Я использую couchdb\couchapp для размещения веб-приложения. Я из Django, и с помощью jinja2 я могу расширять шаблоны двумя способами:

{% include "header.html"%}

или же

{% extends "base.html" %} <<< ---- предпочтительно

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

Заранее спасибо.

1 ответ

Couch db поддерживает распространенные js-модули, что означает, что вы можете экспортировать усы / или другую библиотеку шаблонов в виде строки, а затем использовать ее в своей функции show. Больше объяснений на этот почтовый архив

Если вы хотите использовать JavaScript на стороне сервера, вам нужно сохранить его как свойство в вашем дизайн-документе. Таким образом, в папке "lib" (вне _attachments) вместе с 'couchapp' она будет включена как:

папка couchapp

_id файл

папка |_ _attachments

|_ ...clientside media...

| _ папка lib

| _ mustache.js

<---->

{_id: "", _attachments: {...}, lib: {mustache: ""}}

Тогда вы бы использовали его в функции _show/_list/_update с var Mustache = require('lib/mustache'), Когда мне нужна библиотека, как серверная, так и клиентская, с 'couchapp', я склоняюсь к символической ссылке, чтобы она появлялась как в _attachments, так и в других свойствах.

надеюсь это поможет,

-natevw

Другие вопросы по тегам