![](/img/trans.png)
[英]How to check if an entry already exists inside a table (SQL using Python)
[英]Check if entry exists in MongoDB using Python Flask
我有一个“房间”的集合,其中包含“用户”的集合。 我正在尝试搜索“房间”集合,以查看用户名是否已经存在,如果存在,请更新“ user_ip”字段。 该集合看起来像:
{
'_id': ObjectId('59eea13a2728d50a5edefe0z'),
'name': 'RH-0',
'room_key': 'test123',
'users':
[{'username': 'Pablo', 'user_ip': '127.0.0.1', 'user_port':0},
{'username': 'Franco', 'user_ip': '127.0.0.1', 'user_port':1},
{'username': 'Valeri', 'user_ip': '127.0.0.1', 'user_port':2},
{'username': 'Sarah', 'user_ip': '127.0.0.1', 'user_port':3}
],
'workshop_unit': 'wsu0'
}
我当前的解决方案尝试使用房间名和用户名,但我希望仅使用“用户名”进行搜索。
def user_exists(roomname, username):
if db.rooms.find({"name": roomname},{'username': username}).count() > 0:
return 1
else:
return 0
**注意:用户名在所有集合中都是唯一的。
以下Mongo Shell代码将完成此工作:
db.yourColl.update(
{ "users.username": "Valeri" },
{
"$set": { "users.$.user_ip": "1.1.0.0" }
}
)
我很确定您可以轻松地将其适应您的代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.