Rails 3去除金属?
我正在尝试实现Mongoid,Carrierwave和grid_fs.
我跟着guide 1.
但是,我已经读过Rails 3正在删除Metal(http://github.com/rails/rails/commit/ed34652d1aca148fea61c5309c1bd5ff3a55abfa).
考虑到Rails 3可能会移除Metal以及将来维护的情况.哪个指南更适合让grid_fs,Mongoid和Carrierwave一起工作?
解决方法
您注意到提交了评论“从Rails 3中删除Metal”.然而,正在发生的事实上恰恰与那句话完全相反!
Rails 3没有去除金属.恰恰相反.现在,all controllers are metals,只提供您请求的其他功能.您需要做的就是从ActionController :: Metal继承您的特定控制器类,然后包含任何特定的模块,这些模块提供您在该特定控制器中所需的其他功能.
当然,大多数人都会从ActionController :: Base继承他们的控制器.但现在,ActionController :: Base仅继承ActionController :: Metal并包含所有其他功能模块.
除了ActionPack的其余部分之外,你注意到的那个提交是将金属作为一个单独的功能删除.现在,金属不再是一个单独的特征,因此删除了金属的单独特征实现.现在,一切都是金属.