tab*_*uga 20 ruby activerecord ruby-on-rails ruby-on-rails-3 ruby-on-rails-4
如果我输入我的控制台
u = User.first
u.friends(&map:username)
Run Code Online (Sandbox Code Playgroud)
我知道,["Peter", "Mary", "Jane"]但我也想表现生日,那我该怎么做?我试过了
u.friends(&map:username, &map:birthday)
Run Code Online (Sandbox Code Playgroud)
但这不起作用.
Geo*_*tte 39
您可以使用备用块语法:
u.friends.map{|f| [f.username, f.birthday]}
Run Code Online (Sandbox Code Playgroud)
这将给出一组数组.
u.friends.map{|f| "#{f.username} - #{f.birthday}"}
Run Code Online (Sandbox Code Playgroud)
会给你一个字符串数组.你可以从那里做很多事情.
使用 ActiveRecord >= 4 您可以简单地使用:
u.friends.pluck(:username, :birthday)
Run Code Online (Sandbox Code Playgroud)
尝试
u.friends.map {|friend| [friend.username, friend.birthday]}
Run Code Online (Sandbox Code Playgroud)
该&语法是一个简单的速记到底层红宝石方法。
| 归档时间: |
|
| 查看次数: |
17687 次 |
| 最近记录: |