关于Ruby on Rails的一些简单问题

时间:2016-06-01 12:24:54

标签: ruby-on-rails ruby

Ruby on Rails中的迁移文件中的以下简单代码:

def change
create_table :articles do |t|
  t.string :title 
end

我可以这样理解:

1:create_table是内置的ruby(或Ruby on Rails?)来创建表

2::articles是表名,很清楚

3:这对我来说是最重要的。 do |t|意味着执行它背后的东西?这意味着do将在数据库中添加表,并为其赋值t ???

1 个答案:

答案 0 :(得分:1)

你在这里看到的是一个块,是ruby最强大的语言结构之一。调用create_table时,第一个参数是表示表名称的符号,第二个参数是块(doend之间的位)。假设这是Rails,您可以阅读有关该方法的更多信息here。管道指示t是块参数,在这种情况下是指正在创建的表。

This answer更深入地了解了哪些块。