2009-06-07 91 views
1

我正在構建我的第一個rails應用程序,我期望它最終有許多模型/控制器。當然,他們每個人都有一個與他們相關的ID。我可以看到他們已經開始混淆了。如何在Ruby on Rails應用程序中標記id:?

在用戶控制器中的字段名爲id,但在所有其他控制器我將其標示爲USER_ID。當一個控制器操縱多個模型或者在其他控制器中調用動作時,讓所有的id保持直線似乎很繁瑣。

我想只是前綴他們全部是明確的,但恐怕這可能導致在路上錯誤,用戶實際上並沒有爲user_id場。這將是一個問題時,使用像update_attributes !.

有其他人遇到這個問題嗎?這真的是一個問題,還是我把它變成一個比實際更大的問題?是否有任何標準的最佳做法命名id字段?

謝謝! 戴夫

回答

7

這實在不是一個問題。 Rails中的約定是將表的主鍵標記爲id,以及將該表作爲table_name_id訪問的所有外鍵。

我建議反對改變這一默認行爲,Rails是更多關於約定優於配置,並命名該方法並實際上使你的數據庫架構更容易理解的複雜性增加。

如果您決定更改主鍵名稱,那麼在使用其他人物寶石和插件時,您還有可能遇到更多問題。

1

據我知道id字段最好的名字爲id。

我有大約30款應用程序,幾乎相同數量的控制器。我在單個控制器中操作很多模型,並且從未遇到任何id問題。也許我們可以幫你多一點,如果你粘貼一些代碼。

相關問題