Ruby on rails Rails 4模型子文件夹
我是在app/models/request/book文件夹中创建模型的,但book::request::Status.table_name返回表名“statuses”(“book_request_statuses”-是正确的表名)。如何获得正确的表名 型号位置 model/ book/ request/ status.rb 如果我设置self.table\u name=“book\u request\u status”,那么模型将正常工作(在模型中),但这不是一个好方法:) 抱歉,我的英语不好1)在app/models/book.rb中用这些行创建一个模块Ruby on rails Rails 4模型子文件夹,ruby-on-rails,model,subdirectory,Ruby On Rails,Model,Subdirectory,我是在app/models/request/book文件夹中创建模型的,但book::request::Status.table_name返回表名“statuses”(“book_request_statuses”-是正确的表名)。如何获得正确的表名 型号位置 model/ book/ request/ status.rb 如果我设置self.table\u name=“book\u request\u status”,那么模型将正常工作(在模型中),但这不是一个好方法:
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) 保留所有其他文件的完整性
我希望这对你有用。我想你的问题没有其他答案了。。只需在模型中指定表名,即可正常工作。好的,谢谢。Rails 3没有这个问题……我应该补充一点。我刚刚尝试调用
railsgmodelrequest/book/status
,它生成了这个答案中的项目。它还生成了正确的迁移。所以我建议这样做,让事情变得更简单:)。干杯
module Book
def self.table_name_prefix
'book_'
end
end
module Request
def self.table_name_prefix
'request_'
end
end