随着时间的推移,我们正在升级我们的 Rails 3.2.x 应用程序以兼容 Rails 4。例如,我们的任何新代码都是使用强参数而不是 attr_accessible
编写的。我们希望对 ActiveRecord 的 none
和 find_or_create_by
等功能采用类似的方法,这样当我们完成升级到 Rails 4 时就不必更改太多代码。
是否有 Rails 4 backports 库可以帮助我们解决这个问题?我们目前有一组猴子补丁,但似乎会有一个 gem 用于此。
最佳答案
不,没有。正如您所注意到的,某些功能作为 gem(例如 strong_params
)提供,您可以在以前的版本中轻松安装。
如果出现严重的弃用,Rails 核心团队通常会在旧版本中包含一条弃用消息以及一个向后移植,以便您可以在升级版本之前修复弃用问题。
在 none
的情况下,这不是弃用而是一项功能。除非您在 gem 中找到它,否则您必须升级到 Rails 4 才能使用它。
find_or_create_by
已弃用,但 Rails 4.0 仍然支持它。因此您可以稍后升级和删除代码。
一般来说,通常只为那些会在升级后立即导致不兼容从而阻止您的应用程序正常启动或运行的更改提供弃用的反向移植。
关于ruby-on-rails - 是否有 Rails 4 向后移植库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21170676/