Goa*_*lie 3 ruby ruby-on-rails
我目前正在使用以下内容来获取表中某个字段的数组:
Classrooms.all.map(&:teacher_name)
Run Code Online (Sandbox Code Playgroud)
这将返回以下内容:
["James", "Josh", "Peter"]
Run Code Online (Sandbox Code Playgroud)
我想要的是一个散列而不是像下面这样的东西,我可以在其中包含教师 ID:
{"James" => "1", "Josh" => "2", "Peter" => "3"}
Run Code Online (Sandbox Code Playgroud)
我尝试使用,Classrooms.all.map(&:teacher_name, &:teacher_id)但它给了我一个语法错误。
谢谢!
小智 5
用老式的方法来做:
pairs = Classrooms.all.map {|t|
[t.teacher_name, t.teacher_id] # [key, value]
}
hash = Hash[pairs] # in /old/ ruby: Hash[*pairs.flatten]
Run Code Online (Sandbox Code Playgroud)
.. 或诸如此类。
| 归档时间: |
|
| 查看次数: |
3546 次 |
| 最近记录: |