Node.js 自动生成特定格式的字段

Node.js 自动生成特定格式的字段,node.js,mongodb,Node.js,Mongodb,我想自动生成一个用户记录编号。添加新用户时,会为其分配一个用户记录编号。用户记录编号采用以下格式:“US-000000”。添加到帐户的第一个用户将是用户记录编号US-000001 如何做到这一点?mongodb中是否有任何方法可以基于SQL Server中的格式自动递增?据我所知,mongodb没有任何形式的自动递增功能,即使是自动生成的\u id字段,因为这与系统的集群化、非集中化性质不符 实现这一点的唯一方法是尝试使用atomar操作,如findAndModify或类似操作,并在应用程序中创

我想自动生成一个用户记录编号。添加新用户时,会为其分配一个用户记录编号。用户记录编号采用以下格式:“US-000000”。添加到帐户的第一个用户将是用户记录编号US-000001


如何做到这一点?mongodb中是否有任何方法可以基于SQL Server中的格式自动递增?

据我所知,mongodb没有任何形式的自动递增功能,即使是自动生成的
\u id
字段,因为这与系统的集群化、非集中化性质不符

实现这一点的唯一方法是尝试使用atomar操作,如
findAndModify
或类似操作,并在应用程序中创建递增的ID

建议在集合中保留如下字段:

{
    "_id": "incr",
    "n": 42
}

每当您添加新文档时,请通过读取值并立即读取它-这样您的计数器总是正确递增,并且您可以获得正确的添加数字。

如果您将提到的运算符更改为实际的运算符,那就太好了。为了记录在案,官方手册中有一个关于处理的文档教程。我需要为此创建一个新的集合吗?@Anup不,您只需将上面的文档放在同一个集合中。只要
\u id
不会重叠,就没有问题。当我将上面的文档放在同一个集合中时..当我检索所有用户的列表时..此记录还带有null@然后将
\u id:{$ne:'incr'}
添加到
findAll
查询中。检查以下链接: