Rails 5 的 ActiveRecord::Migration 中的 [5.0] 是什么意思?
What’s does the [5.0] in Rails 5’s ActiveRecord::Migration mean?
我在 Rails 5 应用程序中创建的迁移已 5.0
传递到方法中:
class CreateVariableKeys < ActiveRecord::Migration[5.0]
...
end
我想知道[5.0]
是什么意思。
它是 ActiveRecord::Migration
的 class 方法,定义为 here。
它允许我们 select 我们希望在 4.2
和 5.0
之间使用的迁移版本。该方法抛出一个:
"Unknown migration version ... "
如果将不兼容的版本作为参数传递,则会出错。
ActiveRecord
的生产就绪版本没有该方法,因此它应该在 Rails 5 结束测试版后立即消失。
当从 rails 4 移动到 rails 5 时,它似乎在那里,因此您不必升级旧的迁移。(迁移中有一些小的变化 API).
我在 Rails 5 应用程序中创建的迁移已 5.0
传递到方法中:
class CreateVariableKeys < ActiveRecord::Migration[5.0]
...
end
我想知道[5.0]
是什么意思。
它是 ActiveRecord::Migration
的 class 方法,定义为 here。
它允许我们 select 我们希望在 4.2
和 5.0
之间使用的迁移版本。该方法抛出一个:
"Unknown migration version ... "
如果将不兼容的版本作为参数传递,则会出错。
ActiveRecord
的生产就绪版本没有该方法,因此它应该在 Rails 5 结束测试版后立即消失。
当从 rails 4 移动到 rails 5 时,它似乎在那里,因此您不必升级旧的迁移。(迁移中有一些小的变化 API).