"Gay", "first_name"=>"Rudy", "display_name"=>"Ru-6ren">
gpt4 book ai didi

ruby-on-rails - 遍历 ruby​​ 中的哈希数组

转载 作者:数据小太阳 更新时间:2023-10-29 07:14:16 25 4
gpt4 key购买 nike

所以如果我有一个这样的哈希数组:(ruby 初学者)

input =  [

{"last_name"=>"Gay", "first_name"=>"Rudy", "display_name"=>"Rudy Gay", "position"=>"SF", "minutes"=>39, "points"=>25, "assists"=>6},
{"last_name"=>"Collison", "first_name"=>"Darren", "display_name"=>"Darren Collison", "position"=>"PG", "minutes"=>39, "points"=>14, "assists"=>4}

]

我将如何遍历数组以及遍历每个散列以获得如下内容:

player1 = {display_name=>"rudy gay", "position"=>"SF"}

player2 = {display_name=>"darren collison", "position"=>"PG"}

会不会是这样的

input.each do  |x|
Player.create(name: x['display_name'], position: x['position']
end

(假设我有一个玩家模型)

有没有更好的方法来实现这一点?

谢谢!

最佳答案

鉴于您的输入:

input =  [
{ "last_name"=>"Gay", ... },
{ "last_name"=>"Collison", ...}
]

如果所有这些键(last_name、first_name、display_name)都存在于 Player 模型中,您可以:

input.each do |x|
Player.create(x)
end

因为 create 将采用属性的散列来分配。但是,更好的是,您甚至不需要迭代:

Player.create(input)

如果您给它一个哈希数组,ActiveRecord 将遍历所有这些。

关于ruby-on-rails - 遍历 ruby​​ 中的哈希数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26724347/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com