Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 将Mongo.db对结构的访问限制为一次只能访问一个用户_Node.js_Mongodb - Fatal编程技术网

Node.js 将Mongo.db对结构的访问限制为一次只能访问一个用户

Node.js 将Mongo.db对结构的访问限制为一次只能访问一个用户,node.js,mongodb,Node.js,Mongodb,我有一个画廊收藏,里面有图像阵列 [ { _id: "549e2a2bdb9021b51d96ac84", images: [ { path: "abc123.png", recycles: 0 } ] }, { _id: "549e2a2bdb9021b51d96ac85", images: [ { path: "abc123.png", recycles: 0 } ] } ] Alice要求一个只有一张图片的图库。 Alice将向此图库上

我有一个画廊收藏,里面有
图像
阵列

[
{
  _id: "549e2a2bdb9021b51d96ac84",
  images: [
  {
    path: "abc123.png",
    recycles: 0
  }
  ]
},
{
  _id: "549e2a2bdb9021b51d96ac85",
  images: [
{
  path: "abc123.png",
  recycles: 0
}
]
}
]
Alice要求一个只有一张图片的图库。 Alice将向此图库上载第二张图像。 Bob请求仅包含一张图像的图库。我如何标记第一个画廊,使鲍勃不会从爱丽丝那里得到相同的图像

我正在考虑在Alice请求时用访问的时间戳标记第一个库

如果Alice在N分钟内没有将第二张图片上传到图库,Bob请求一个新的图库,那么他将获得第一张

我的问题是,对于这种设计,什么是好的JSON结构&什么是构造Mongo查询的有效方法

我对其他设计持开放态度,为用户提供一个一次只有一张图片的图库

详细说明:

画廊=战斗

我正在构建一个“图像战”应用程序。最终客户端将下载一个“战斗”,其中有1或2个图像。在任何一种情况下,用户都会从现有图像中选择一个,拍摄自己的图像,然后上传


所以我不想让鲍勃、卡莉和大卫都上传一张照片到爱丽丝的战斗中——应该只有两张照片。一旦鲍勃上传了一张照片到爱丽丝的战斗中,卡莉就可以下载战斗,选择她喜欢的,上传她自己的,然后大卫(或任何人)就可以下载。。重复。

请详细说明一下您的用例——它有点抽象。为什么在Alice上传了第二张图片后Bob只需要用一张图片就可以访问画廊?@MarkusWMahlberg补充道:“我不确定我是否完全理解这个用例,但是在开始工作时使用时间戳跟踪“被占用”的画廊似乎是合理的。您可以使用对时间戳的查询来查找未占用的库,方法是检查占用的时间戳是否早于N分钟,并将时间戳默认为从应用程序首次启动时起超过N分钟的时间。