ActiveRecord Migration之后的括号[5.1]是什么?它是如何工作的?

时间:2017-11-05 20:49:27

标签: ruby-on-rails ruby activerecord ruby-on-rails-5

使用bin/rails g migration CreateUser生成新迁移时,第一行将如下所示:

class CreateUser < ActiveRecord::Migration[5.1]

[5.1]代表什么?它是如何运作的?

这是对What’s does the [5.0] in Rails 5’s ActiveRecord::Migration mean?的跟进,因为它没有解释这是如何使用[5.1]brackets

在合法搜索中出现的问题

1 个答案:

答案 0 :(得分:1)

这是Rails 5引入的新迁移版本。该数字表示创建迁移的迁移版本,在本例中为版本5.1,应与Rails版本>= 5.0一起使用。

这是def self.[](version)的类函数ActiveRecord::Migration,它调用Compatibility.find(version)并用于向后兼容。

以下是GitHub的代码参考: