我最近完成了Hartl的Rails教程,並設計了一個我想嘗試構建的小應用程序。我想了解是否需要學習,並將單獨的數據庫(如PostgreSQL)集成到我的Rails模型中,以便對基於共享質量的用戶進行匹配的功能進行建模。建模以下需要一個與Rails內部提供的單獨數據庫?
例如,如果用戶a
和用戶z
都表明他們like chinese food
以及like spicy meatballs
,他們將被「匹配」彼此,其中任用戶可以發起「好友請求」。然而,如果a
是喜歡描述的食品,但用戶b
like spicy meatballs
和like tapas
,a
和b
不會相互匹配(因爲他們只喜歡1個共同的東西..或一些其他愚蠢的匹配邏輯:))。當然,實際的模型可能比這個稍微複雜一些,其中可能存在其他因素,如「音樂」或「運動」,其中匹配過程會考慮某些質量優越的因素,並且在匹配過程中比其他因素權重更大。
我的問題是 -
- 將Rails的是足以應付上述稍微複雜的數據庫,供用戶輸入自己的信息,然後一個「黑盒子」模式將吐出的比賽?是否有任何資源可以用於瞭解更多關於Rails數據庫的信息?
- 如果不是,您會推薦哪種類型的數據庫以瞭解更多信息? PostgreSQL會成爲一個好的候選人嗎?
謝謝!
編輯 - 爲了澄清,我的問題來自於this part in the tutorial中討論的主題,其中提到了如何使用Rails讓人們「幾乎不必考慮Rails如何存儲數據」。我想知道,如果數據庫需要自行執行某些類型的工作(比如匹配),情況會不會如此。
感謝您的聯繫!很抱歉,如果問題遍佈全球(並且混淆概念)。這些澄清真的有幫助。 – daspianist
沒問題。這是否足以回答你的問題? (接受?):) – TomDunning
只是更多的澄清將是偉大的(我接受了答案:))。目前我不清楚的是,如果我要修改Rails yml文件來使用MySQL,我會在MySQL或Rails中爲用戶「匹配」編寫代碼嗎?從概念上講,從數據庫中獲取的匹配如何被轉換爲視圖? – daspianist