1

假设我在我的 CouchDB 中有一个名为“user/all”的视图和一个 CouchRest ExtendedDocument,如下所示:

class User < CouchRest::ExtendedDocument

    property :username
    property :password
    property :realname
    property :role
    property :rights

end

我将如何使用此 ExtendedDocument 从该视图中检索密钥“admin”的文档?

(如果我需要对 ExtendedDocument 子类进行更改,应该更改什么?)

非常感谢。

4

1 回答 1

1

尝试这个:

class User < CouchRest::ExtendedDocument

  property :username
  property :password
  property :realname
  property :role
  property :rights

  view_by :role 

end

在这里,我假设“管理员”是一个角色属性。这将在您的设计文档中创建一个以角色为键的视图。然后,要获取所有“管理员”文档,您只需执行以下操作:

@admins = User.by_role(:key => 'admin')

如果实际上文档的实际 id 是“admin”,那么您所要做的就是:

@admin = User.get('admin') 

或者,或者:

@admin = User.all(:key => 'admin')

我还建议看一下 CouchRest Model,如果你在 Rails 中使用它,它基本上是 CouchRest 的 Active Model 投诉扩展。祝你好运!

于 2011-02-03T21:03:03.330 回答