【发布时间】:2012-10-08 17:18:35
【问题描述】:
我在看 Sinatra 并试图理解语法:
require 'sinatra'
get '/' do
"Hello, World!"
end
我知道它是这样做的:
这是一条“路线”。在这里,我们告诉 Sinatra,如果使用普通的 GET HTTP 方法请求主 URL 或根 URL '/',以显示“Hello, World!”
但是 Ruby 语言发生了什么?
- 这个语法是什么意思:
get '/'?get是一种方法,而 '/' 是它的参数吗?如果是方法,那么在Ruby中,我可以将方法称为methodname (parameter) {}。{ }是干什么用的? - 我通常将
do和end理解为{ },它们是对函数体的一种封装。 - 在
do和end之间有“Hello, World!”这是一个声明吗?我的意思是,它正在打印,但我们没有将其称为print "Hello, World!",所以这是怎么回事? - 似乎
get是Sinatra 中定义的方法,但如果我添加一个gem,其中已经定义了get方法,那么我怎么知道它会调用哪个'get' 方法?还是指HTTPget方法?
如果这个问题听起来很基本,我很抱歉,但我想在继续之前解决它。
【问题讨论】: