如何在 rails 控制台中编写函数?

How do I write a function in rails console?

我正在尝试在 rails 控制台中编写一个函数,在示例中,这就是该函数在终端中的外观。

>> def string_message(str = '')
>>   return "It's an empty string!" if str.empty?
>>   return "The string is nonempty."
>> end

他们如何创建一个新行,同时仍然让控制台意识到这是所有行都创建了一个函数。写成这样是否准确:

>> def string_message(str = '') \n\t return "It's an empty string!" if str.empty? \n\t blah blah \n\t 

?

IRB,rails console 所依赖的 ruby 控制台支持开箱即用。

只需输入您的函数声明,按回车键,然后逐行输入函数体,最后输入end

您会看到这样的文字:

2.4.1 :001 > def say_hi(person)
2.4.1 :002?>   puts "Hi #{person}"
2.4.1 :003?>   end
 => :say_hi 
2.4.1 :004 > say_hi("Nina")
Hi Nina
 => nil 
2.4.1 :005 > 

注意 ? 如何指示 IRB 在计算表达式之前等待更多输入。