2011-10-18 18 views
1

我有一個資源只是一個模型:我正在構建一個與Twitter時間軸和提及系統類似的應用程序。提及類沒有記者控制器或任何意見。我建立它的方式,只要發佈消息,就會創建提及。在創建消息之前,會先掃描用戶名併爲每個用戶創建一個提及實例。這發生在消息和提及模型中。 或者,對於那些用戶不直接與之交互的資源,這種模式只適用於那些資源嗎?在沒有控制器或視圖的情況下擁有資源是不好的做法嗎? (Rails)

這是我的第一個rails應用程序,我仍然在學習MVC和REST,所以我想我做了很多錯誤的事情。什麼是適當的架構呢?

回答

2

如果您的數據不需要單獨的控制器或視圖,那麼這就是您的應用的方式。也就是說,通過RESTful映射(如果你的應用程序需要它)暴露甚至嵌套的模型通常很方便,以避免過度的提取 - 但是再一次,是否有意義是特定於應用程序的。

+0

我真的不明白,最後一部分('這就是說,通過RESTful映射(如果你的應用程序需要它)來暴露甚至嵌套模型通常都很方便,以避免過度提取')。你願意詳細說明一下嗎? –

+1

@oalo當然。您可能想要通過REST API檢索消息。您不一定要在相同的調用中返回該消息的提及,因爲調用者可能不希望他們(或爲了效率)。但是,如果你需要暴露它們,可以通過第二次調用'message /:id/mentions'來檢索它們,這可能會在'Mention'控制器中處理。 –

2

我曾參與過很多項目,其中有一些模型被用作連接表並且沒有相應的控制器或視圖。聽起來就是這樣,你在這裏做什麼,所以我不會擔心它。

有時你將擁有一個控制器和視圖,但沒有相應的模型,反之亦然。

相關問題