首页 > 评论放在list里,怎么为每条评论创建唯一标识符id?

评论放在list里,怎么为每条评论创建唯一标识符id?

MongoDB里,我将评论以dict形式存放在list里,由于要考虑到评论的修改和删除,所以不知道怎样给这些评论创建id,各位有没有好办法?

{
        "_id" : ObjectId(),
        "comments" : [
                {
                        "id" : '#就是这里的id#',
                        "text" : "",
                },
        ]
}

可以为子文档创建 自增id


您可以使用MongoDB的ObjectId么

UPDATE:

评论应该是挂靠在文章上,而不从属于文章

所以,另外建立个collection,放评论,然后里面包含一个被索引的字段,指向文章的objid。

@felix021: 那好吧,加个当前最大楼层的字段,删除的楼层不影响其他楼层。

{
        "_id" : ObjectId(),
        "comments_max_id" : int,
        "comments" : [
                {
                        "id" : int,
                        "text" : "",
                },
        ]
}

comments_max_id从1开始,没评论时为0
新加的时候,将新id和comments_max_id同时赋值为comments_max_id+1
删除的时候也不影响其他回复


ObjectId()和comments的index可以确定一条comment

ObjectId() 和 0 可以知道 是id = ObjectId()的文章的第一条回复

如果需要管理所有的回复用楼上的方法吧

【热门文章】
【热门文章】