当您使用导轨脚手架创建名称空间模型时,会得到两个文件。例如,该支架:在导轨名称空间模型中丢失名称空间信息
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