Почему работает только один из этих видов CouchDB?

У меня есть несколько документов в CouchDB типа: "Person" и типа "Account",

Для прямого списка всех документов этих типов я создал следующий проектный документ в _design/directory_views:

{
   "_id": "_design/directory_views",
   "_rev": "21-f5df9253504e66f28393f4bda360e110",
   "views": {
       "all_persons": {
           "map": "(function(doc) { if (doc.type == \"Person\") { emit(null, { 'last_name': doc.last_name, 'first_name': doc.first_name }); } })"
       },
       "all_accounts": {
           "map": "(function(doc) { if (doc.type == \"Account\") { emit(null, { 'username': doc.username }); } })"
       }
   }
}

Этот JSON проверяется на JSONLint и принимается при сохранении документа в исходном представлении Futon.

Футон списки directory_views/all_persons а также directory_views/all_accounts как и ожидалось в выпадающем списке. all_persons создает правильный список документов типа "Person", тем не мение all_accounts перенаправляет обратно на верхний уровень All Documentsи перечисляет все.

Почему all_persons работать, но all_accounts потерпеть поражение?

PS. Я испытывал такое поведение в ряде проектных документов до сих пор. В этом примере http://kore-nordmann.de/blog/couchdb_a_use_case.html показаны два представления в одном документе дизайна, поэтому я не думаю, что вы можете иметь только одно представление на документ.

1 ответ

Решение

Попробуйте получить доступ к своему представлению напрямую (т. Е. За пределами Futon), чтобы увидеть, ведет ли он себя так же.

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