【发布时间】:2013-01-27 21:24:07
【问题描述】:
我正在尝试手动创建一些参数以传递给 Rails 控制器函数,为什么用冒号列出参数哈希的键,例如params[:key] 而不是params["key"]?
【问题讨论】:
-
你是说 :key 和 hash 数据结构的 "key" 一样吗?
-
:starts_a_symbol while "quotes_delimit_strings"。当 rails 解析请求头时,它会使用符号构建 params 哈希。
-
好的,如果 rails 说从 params 中提取 id,那为什么是 params[:id] 而不是 params["id"]?
-
因为该哈希的键是符号。 hash 可以使用任何类型的对象作为键或值。符号通常用作键。
标签: ruby-on-rails ruby ruby-on-rails-3