Couchdb:在_user文档中添加用户配置文件属性

时间:2011-01-31 02:30:15

标签: couchdb field

向Couchdb添加新用户时,是否适合在同一文档中添加额外的配置文件字段?

我知道我可以在其中添加另一个包含用户配置文件的数据库来补充_users文档中的内容,但是_users文档的设计是静态的,还是可以在用户文档中添加其他字段?

1 个答案:

答案 0 :(得分:3)

_users数据库是存储用户信息的好地方。文档的设计很放松,所以我不担心添加字段。 (删除一些可能会有风险。)您可以考虑在文档中为所有数据添加一个对象:

{ "_id": "org.couchdb.user:jhs"
, "_rev": "3-281e87af31d7d8277463732dccc06f65"
, "name": "jhs"
, "type": "user"
, "roles": ["whatever"]
// (etc.)
, "myapp":
  { "profile_photo": "http://example.com/some_photo.png"
  , "favorite_color": "blue"
  }
}

您要检查的一件事是validate_doc_update中的_design/_auth功能。确保它不会阻止你做你需要的。目前(可能无限期地)它不会检查文档中除了需要的任何属性(typenameroles等)。

请记住,这些文件是世界可读的。每用户私有数据应该位于每用户私有数据库中。