第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

MongoDB關系:嵌入還是引用?

MongoDB關系:嵌入還是引用?

qq_笑_17 2019-05-28 18:04:32
MongoDB關系:嵌入還是引用?我是MongoDB的新手 - 來自關系數(shù)據(jù)庫背景。我想設計一個帶有一些注釋的問題結構,但我不知道用于評論的關系:embed或者reference?有一些注釋的問題,比如stackoverflow,會有這樣的結構:Question     title = 'aaa'     content = bbb'     comments = ???首先,我想使用嵌入式注釋(我認為embed在MongoDB中推薦),如下所示:Question     title = 'aaa'     content = 'bbb'     comments = [ { content = 'xxx', createdAt = 'yyy'},                   { content = 'xxx', createdAt = 'yyy'},                   { content = 'xxx', createdAt = 'yyy'} ]很清楚,但我擔心這種情況:如果我想編輯指定的評論,我該如何獲取其內容及其問題?沒有_id讓我找到一個,也沒有question_ref讓我找到它的問題。(我是新手,我不知道如果沒有_id和沒有任何方法可以做到這一點question_ref。)我必須用ref不embed?然后我必須創(chuàng)建一個新的評論集合?
查看完整描述

4 回答

?
千巷貓影

TA貢獻1829條經(jīng)驗 獲得超7個贊

如果我想編輯指定的評論,如何獲取其內容及其問題?

您可以按子文檔查詢:db.question.find({'comments.content' : 'xxx'})。

這將返回整個問題文件。要編輯指定的注釋,您必須在客戶端上找到注釋,進行編輯并將其保存回數(shù)據(jù)庫。

通常,如果您的文檔包含一個對象數(shù)組,您將發(fā)現(xiàn)這些子對象需要在客戶端進行修改。


查看完整回答
反對 回復 2019-05-28
?
幕布斯6054654

TA貢獻1876條經(jīng)驗 獲得超7個贊

好吧,我有點遲了但仍想分享我的架構創(chuàng)建方式。

我有一些可用一個詞描述的模式,就像你在經(jīng)典的OOP中所做的那樣。

例如

  • 評論

  • 帳戶

  • 用戶

  • 博文

  • ...

每個模式都可以保存為Document或Subdocument,因此我為每個模式聲明了這一點。

文獻:

  • 可以作為參考。(例如,用戶發(fā)表了評論 - >評論對用戶有“制作者”的引用)

  • 在您的應用程序中是“根”。(例如博客帖子 - >有關于博客帖子的頁面)

子文檔:

  • 只能使用一次/永遠不是參考。(例如評論保存在博文中)

  • 在您的應用程序中永遠不是“根”。(評論只顯示在博客頁面中,但頁面仍然是關于博客帖子)


查看完整回答
反對 回復 2019-05-28
  • 4 回答
  • 0 關注
  • 1393 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號