Структура каталогов Couchapp, обновления? - PullRequest
6 голосов
/ 12 апреля 2011

при генерации нового couchapp я получаю такую ​​структуру:

appname
├── _attachments
│   └── style
├── evently
│   ├── items
│   │   └── _changes
│   └── profile
│       └── profileReady
│           └── selectors
│               └── form
├── lists
├── shows
├── updates
├── vendor
│   └── couchapp
│       ├── _attachments
│       ├── evently
│       │   ├── account
│       │   │   ├── adminParty
│       │   │   ├── loggedIn
│       │   │   ├── loggedOut
│       │   │   ├── loginForm
│       │   │   │   └── selectors
│       │   │   │       └── form
│       │   │   └── signupForm
│       │   │       └── selectors
│       │   │           └── form
│       │   └── profile
│       │       ├── loggedOut
│       │       ├── noProfile
│       │       │   └── selectors
│       │       │       └── form
│       │       └── profileReady
│       └── lib
└── views
    └── recent-items

Теперь, поскольку эта структура предназначена для отражения структуры JSON документа CouchDB _design, я понял это:

  • [_ вложения] Вложения хранятся в двоичном виде.Здесь хранятся файлы JavaScript, CSS и HTML.

  • [в конечном итоге] ???

  • [списки] Списки - это функции JavaScript, которыевыполняется для отображения HTML или AtomFeeds из результатов просмотра.

  • [показывает] Функции отображения аналогичны функциям списков, но визуализируют содержимое путем преобразования документа в другие форматы (такие как html, xml)., CSV, PNG).

  • [обновления] ???

  • [vendor] Дом внешних библиотек.

  • [views] Представление содержит функции MapReduce, которые впоследствии можно запрашивать через HTTP API (см.\ ref {couchdb: views}).

Мне кажется, что я не ошибаюсь в заполненных описаниях, как бы я описал каталог обновлений?Функции проверки хостинга?

Второй вопрос: как бы вы описали возможный каталог ...

Если сводка по этому уже существует, пожалуйста, укажите мне!

С уважением!

Ответы [ 3 ]

4 голосов
/ 04 июля 2011

Я пользуюсь couchapp уже неделю или две. Мне потребовалось больше времени, чтобы понять, как работает couchDB и как работает couchapp. На самом деле, у меня были те же самые вопросы, что и у вас, и теперь я уверен, что у каждого новичка в couchapp будут эти вопросы в памяти. По крайней мере, чтобы сэкономить их время, я публикую некоторые ссылки, которые помогут вам лучше ответить на те вопросы, которые вы задали. И ссылки, как показано ниже:

Надеюсь, они помогут.

4 голосов
/ 12 апреля 2011

Команда generate создает базовый формат документа, который необходим CouchDB;и это также создает среду разработки веб-приложений, Evently.Я не очень хорошо знаю, в конце концов;но в основном это дает разработчикам инструменты и предложения для взаимодействия пользовательского интерфейса и кушетки.

Лично я никогда не использую команду couchapp generate.Я просто создаю файл _id с нуля (echo -n _design/whatever > _id), затем создаю папки и файлы по мере необходимости.

Функции списка (по одной на файл) получают вывод _view для создания любого ответа HTTP (например, XML RSS).

Показать функции (одна на файл) получает один документ для создания любого ответа HTTP.

Функции обновления (одна на файл) получают один HTTP запрос и выведите один подготовленный документ для хранения на диване.(Например, получение отправки формы и создание документа JSON.)

Функции просмотра (одна map.js и одна reduce.js в папке) являются представлениями CouchDB и обеспечивают запросы и прочее.

Я не уверен насчет updates и vendor.Они не относятся к серверу CouchDB.

3 голосов
/ 13 апреля 2011

Функции обновления описаны в вики CouchDB .Цитируя это:

[...] вы должны думать о том, что обработчик _update дополняет функции _show, а не validate_doc_update функции.

В конце концов задокументированона сайте CouchApp .Документация слабая, я использую ее в проекте, и я нашел только короткое сообщение в блоге с полезной информацией.К счастью исходный код легко понять.Но посмотрите на приложение Pages для примера использования.Во всяком случае, мне не ясно, насколько он используется .

...