Rails 4模型子文件夹
我在app / models / request / book文件夹中创建了模型,但Book :: Request :: Status.table_name返回表名“statuses”(“book_request_statuses” – 是正确的表名)。 我怎么能得到正确的表名?
模特位置
模型/ 书/ 请求/ status.rb
模型/书/请求/ status.rb
class Book::Request::Status < ActiveRecord::Base ... end
配置/ application.rb中
config.autoload_paths += Dir[Rails.root.join('app', 'models', '**', '*.rb')]
如果我设置self.table_name =“book_request_statuses”,那么模型将正常工作(在模型中),但这不是很好的方式:)。
抱歉我的英语不好
1)使用这些行在app / models / book.rb中创建一个模块。
module Book def self.table_name_prefix 'book_' end end
2)然后在app / models / book / request.rb中创建另一个模块
module Request def self.table_name_prefix 'request_' end end
3)将状态模型放在app / models / book / request /目录中。
4)保持所有其他文件完好无损。
我希望这适合你。