2015-12-09 30 views
0

我已將SailsJs應用程序連接到Mongodb數據庫。我正在開發分析應用程序。這些都是在我的應用程序的主要車型:有沒有更好的方式來處理Sails JS中的嵌套(關聯)模型?

User Project Report Event

用戶可以有多個項目,一個項目可以有許多報告和報告可以有許多事件。我已經使用我的模型屬性的collectionmodel屬性創建了這些關係。我的問題是爲什麼很難找到特定用戶的事件?我希望我能做到這一點:

User. 
    find({id: id}). 
    populate('projects'). 
    populate('reports'). 
    populate('events'). 
    then(function (eventsOfMyUser) { 
    }); 

但因爲只有projects是我User模型的屬性,只有第一個填入作品。不應該是一種更簡單的方法來找到深層模型,而不是在我的控制器或模型代碼中編寫令人討厭和令人困惑的異步循環?

+0

這是它使這樣的一個時期感覺在模型上編寫您自己的方法函數以實現更復雜的行爲。 也許是時候使用'.query()'與普通的SQL –

+0

@FrederickStark你不覺得這是一個非常簡單的行爲,水線無法處理?我開始認爲,在這些簡單的情況下,sailsJS真的讓你失望,我開始使用它是犯了一個錯誤。我希望我錯了,或者我可以通過修改我的項目來解決我的問題。你不覺得它必須是框架的一部分嗎? –

+0

是的,這是航行/水線應該能夠最終處理的行爲。這是使用v1.0之前的框架的麻煩。提出水線回購問題是一個好主意。或者更好,如果您有時間制定解決方案,可以提出拉取請求 –

回答

0

現在有一個鉤子,可以讓你做到這一點。它正在改變水線與Offshore。 Offshore是具有深度填充和緩存機制的Waterline延伸叉。

sails-hook-orm-offshore

在路線圖中現在有:

  • 協會標準(添加默認標準協會)
  • 交易
相關問題