繁体   English   中英

“做|做”是什么意思 |” 在红宝石?

[英]What is the meaning of “do | |” in Ruby?

在阅读一些 Ruby 代码时,我看到了这个:

create_table :talks do |t|

这个符号是什么|variable| ? 那有什么作用?

而且,我在哪里可以找到有关这些特定主题的帮助,例如| | | | #{}等等?

这是一种为块定义参数的方式,类似于def methodname(arg1, arg2)

Robert Sosinski提供了一个很好的块解释

您可能还会听到它们被称为球门柱。 它们本质上是命名参数,可以用来迭代集合中的数据。 例如,使用数组:

# Print 1 2 3 4
[1,2,3,4].each do |e|
    print "#{e} "
end

或者使用键值映射,您将在目标帖子之间有多个参数

m = {"ruby" => "rails", "groovy" => "grails", "scala" => "lift", "java" => "spring"}
m.each do |lang, framework|
    # print the keys first - "ruby groovy scala java"
    print "#{lang} "
    # print the values second - "rails grails lift spring" 
    print "#{framework} "
end

您的问题听起来比 Ruby on Rails 更针对 Ruby 语言。 我会查看其中一些链接:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM