【发布时间】:2011-02-17 18:54:38
【问题描述】:
我是 Ruby 和 Ruby on Rails 世界的新手。我已经阅读了一些指南,但我对以下语法有一些问题。
我认为 :condition 语法的用法在 Ruby 中用于定义具有某种访问器的类属性,例如:
class Sample
attr_accessor :condition
end
隐式声明“条件”属性的 getter 和 setter。 在查看一些 Rails 示例代码时,我发现以下示例我并不完全理解。
例如:
@post = Post.find(params[:id])
为什么它使用这种语法访问id 属性,而不是:
@post = Post.find(params[id])
或者,例如:
@posts = Post.find(:all)
:all 是这里的常数吗?如果不是,那么这段代码的真正含义是什么?如果是,为什么不使用以下内容:
@posts = Post.find(ALL)
谢谢
【问题讨论】: