Я создаю приложение для рельсов поверх CouchDB и решил попробовать драгоценные камни Couch_potato и Simply_stored, поскольку они, кажется, добавляют хороший набор функций поверх остальных API и поставили разработку CouchDB «на рельсы».
Из того, что я вижу, SimlyStored/Couch работает над слоем дивана_potato, поэтому, насколько я понимаю, основные функции дивана должны быть доступны из класса, который включает в себя SimplyStored:: Couch.
Однако мне не удалось использовать ключевое слово view для создания пользовательских представлений в модели, включающей SimplyStored.
Например, следующий код:
Class MyExample
include SimplyStored::Couch
property :name
end
Будет создан проектный документ с именем _design/myexample, который будет содержать представление с именем all_documents, используемое для методов find(..). Это действительно очень приятно.
Однако изменение кода на
Class MyExample
include SimplyStored::Couch
property :name
view :example, :map => "function(doc) { emit(doc.name, null)}", :include_docs => true, :type => :custom
end
Не буду добавлять представление с именем example, как я и ожидал, однако я наверняка где-то упускаю момент.
Поэтому, если у кого-то есть предложения по определению дополнительных пользовательских представлений с использованием этих фреймворков, я был бы очень признателен.
Спасибо,