请教:mongodb帖子类表设计
天蓬老师
天蓬老师 2017-05-02 09:21:46
0
1
588

1.帖子有内容有回复,如果在mongodb里只用1个表的话,可以设计成这样

{
    title:'巴拉巴拉',
    content:'巴拉巴拉',
    comments:[
        {
            user:123,//用户123的回复
            content:'123'
        },
        {
            user:456,//用户456的回复
            content:'456'
        }
    ]
}

这样的设计的话,如何修改 user:456 里的content?

1)是否用类似数组下标的方式?如:comments[1].content?如何写?
天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

membalas semua(1)
过去多啦不再A梦

Jika anda sudah mengetahui subskrip {user: 456}, anda boleh menukarnya menggunakan subskrip tatasusunan:

db.coll.update({...}, {$set: {"comments.1.content": "567"}})

Atau mengikut syarat pertanyaan:

db.coll.update({"comments.user": 456}, {$set: {"comments.$.content": 567}})

di mana $ mewakili elemen tatasusunan yang dipadankan. Tetapi cara ini hanya akan mengubah suai elemen tatasusunan padanan yang pertama. Oleh itu, berhati-hati bahawa syarat anda mesti sepadan dengan elemen yang ingin anda ubah. Mengambil data anda sebagai contoh, jika pengguna ini telah mengulas dua kali, akan ada masalah dengan menulis seperti ini.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan