使用node.js在CouchDB中创建用户自己的文档

时间:2014-01-09 15:41:06

标签: node.js couchdb couchdb-nano

我想制作文档,这些文档可以由一个具体用户(创建它的用户)更新/更改。所有用户都可以看到的文档内容,但只有所有者才能更改。问题是: 如果我有用户名“TheUser”的用户怎么能创建自己的文件名为“TheUserDocument”。将Nodejs,Nano或其他东西用于数据库不是问题。

1 个答案:

答案 0 :(得分:0)

这可以通过文档更新验证功能来完成。当您最初创建文档时,存储创建它的用户,然后您的更新验证函数可能如下所示:

function(newDoc, oldDoc, userCtx, secObj) {
  if ( oldDoc.creator == userCtx.name ){
    return;
  }
  throw({forbidden: 'Permission denied.'});
}

您可以在此处详细了解验证功能:http://docs.couchdb.org/en/latest/ddocs.html#validate-document-update-functions