1
文字列とオブジェクトの配列を比較しようとしています。文字列の値が配列内のそのオブジェクトと一致すると、それを保持します。ここでruby keep_if配列と文字列の比較
は一例です:
sample.keep_if { |keep_ele| [keep_ele]["child_name"] == name }
、これは次のエラーを返します:
sample = [#<Model::ID:0x007fcb83ace8a0
type_id: 6,
parent_name: "Old Man",
child_name: "Junior">,
#<Model::ID:0x007fcb83abd0a0
type_id: 6,
parent_name: "Mary",
child_name: "Michelle">,
#<Model::ID:0x007fcb83abce70
type_id: 6,
parent_name: "Ole Bob",
child_name: "Bobby">]
name = "Michelle"
だから私は、次のことを試してみました はTypeError:整数
に文字列のいない暗黙の型変換をしかし私がIRBにいるとき、私はsample[1]["child_name"]
を出力します。それは"Michelle"
は、それでは私が試した:
sample.keep_if { |keep_ele| keep_ele["child_name"] == name }
、それだけで空の配列が返さ:[]
keep_ifを実行する方法上の任意のアイデアを?