當您使用導軌腳手架創建名稱空間模型時,會得到兩個文件。例如,該支架:在導軌名稱空間模型中丟失名稱空間信息
rails generate model Staff::Location name:string address:string
生成以下文件:
/app/models/staff.rb
module Staff
def self.table_name_prefix
"staff_"
end
...
/app/models/staff/location.rb
class Staff::Location < ActiveRecord::Base
...
我遇到的時候開發模式下軌卸載模塊的工作人員的問題,從來沒有重新加載。這會導致一些惱人的錯誤,例如由於缺少table_name_prefix,Location無法訪問它的表。當我不直接訪問模型時,例如通過多態關係,問題似乎就出現了。
我似乎無法獲得一致的基礎上加載模塊。這是命名空間模型的最佳實踐方式嗎?如果是這樣,我錯過了什麼?
你可以給一個代碼產生這個錯誤的例子嗎?也許其中一個似乎經常失敗的關係? – Brandan 2012-04-14 23:50:55