例如,下面是routes.rb文件中的一些代码
match 'products/:id' => 'products#show', via: :get
字符串
我认为match是一个没有括号的方法,所以这是我习惯的。
'products/:id' => 'products#show'
型
应该是一个隐含的散列?我不能创建一个散列使用没有括号像这样似乎是在这里做
my_hash = 'p' => 'x'
型
然后最后一个部分在我的irb中不起作用,替换了值,但保持了结构。
我知道如何阅读文档,只是复制粘贴和子出我需要的值,并使事情工作,但我想了解语法,这样我就可以写代码,而不必觉得它是任意的,需要文档告诉我到底要输入什么。
1条答案
按热度按时间new9mtju1#
关于hash,它确实是一个hash。当创建一个新的hash时,Ruby希望它被定义在花括号(
{}
)中。然而,当它作为参数传递给一个方法时,它允许它在没有花括号的情况下被声明(当它是最后一个参数时)。同样的事情发生在via: :get
上。你可以阅读更多关于它在这里。