2016-06-01 3 views
-2

Следующий простой код миграционную файл в Ruby On Rails:Некоторые простые вопросы о Ruby On Rails

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

Могу ли я понимать это так:

1: create_table является рубин встроенный (? или Рубин на Rails), чтобы создать таблицу

2: :articles это имя таблицы, так ясно

3: Это наиболее важно для меня Illu в моем мозгу. do |t| означает выполнить то, что стоит за ним? это означает, что do добавит таблицу в базу данных и даст ей значение t ???

+0

Это не что-то похожее на трубы unix, если это то, о чем вы просили. –

+0

Привет, я знаю, что это простой вопрос, но мне все еще трудно понять роль трубы. Меня не волнует рейтинг моего профиля в stackoverflow, я забочусь о своих знаниях; Что означает внутри кода Ruby on Rails, когда мы используем каналы, это то, о чем я просил. Спасибо за вашу негативную реакцию. – bbparis

+0

@Sergio, нет, я просто спрашиваю о роли труб внутри Ruby-кода. Спасибо за ваш комментарий – bbparis

ответ

1

Что вы видите здесь - это блок, один из самых мощных языковых конструкций рубина. create_table вызывается с первым параметром, обозначающим имя таблицы, а вторым параметром является блок (бит между do и end). Предполагая, что это Rails, вы можете узнать больше об этом методе here. Трубы показывают, что t является параметром блока, который в этом случае относится к создаваемой таблице.

This answer более подробно описывает, что такое блоки.

+0

Спасибо, Munyari, интересно, и я следую ссылке сейчас. – bbparis