2012-07-16 62 views
2

我目前正在做「存儲評論」的mongoDB教程... 試圖使用「每個評論一個文檔」的概念。mongodb評論教程

http://docs.mongodb.org/manual/use-cases/storing-comments/

我添加下列文件到我的數據庫:

a = {'discussion_id': 55, slug: '34db', full_slug: '2012.02.08.12.21.08:34db',  text:'1'} 
b = {'discussion_id': 66, slug: '34db/8bda', full_slug: '2012.02.08.12.21.08:34db/2012.02.09.22.19.16:8bda', text:'1.1'} 
c = {'discussion_id': 77, slug: '88uz', full_slug: '2012.03.08.12.21.08:34db', text:'2'} 

保存的所有文件即時我db.test和執行:

db.test.find().sort('full_slug':1) 

因爲它是在文檔中說: 「...你可以在full_slug字段上使用簡單的排序來檢索一個線程視圖」 我想知道那是怎麼回事tput的應該像...

我只得到JSON看起來像:

{} 
{} 
{} 

當我預期更多的東西 「螺紋/嵌套」 像......

{ 
{} 
} 
{} 

你能告訴我如果我的輸入有問題 或者我有錯誤的期望?

如果此輸出正常: 如何將信息呈現爲線程html輸出? (該命令看起來不錯,但如何從中得到縮進信息?)

+1

七個問題,但零接受的答案... – woz 2012-07-16 19:34:59

+0

哦對不起...我第一次聽說這個功能......會回頭瞭解它。 感謝您的建議 – JoeFrizz 2012-07-16 19:44:37

回答

2

這是您的期望。 Mongo將返回數組中的所有文檔。任何關係或條件邏輯/實現都需要在代碼中處理(在插入之前或在選擇之後)。例如:

  1. 在插入mongo之前,計算正確的縮進級別並在文檔上添加另一個屬性以存儲計算值。

  2. 檢索文檔後,使用每個文檔中的上下文元素來計算(即時)正確的縮進級別。

+0

所以如果我理解正確:這意味着'full-slug'僅用於確定線程視圖的正確順序(但總是以不包含嵌套的一維數組的形式返回)? 非常感謝tipp添加額外的縮進字段... – JoeFrizz 2012-07-16 19:52:25

+0

正確的話,mongo結果將始終是一維數組。對於這個確切的功能,NoSQL可能不是你最好的選擇。 – lukiffer 2012-07-16 19:53:39