7

Rails 3.1アプリには、いくつかのオブジェクトによって作成された配列があります。

[#<Hardware id: 10, brand_id: 5, model: "B4200", description: "Stampante OKI B4200", typology_id: 3, sub_typology_id: 10, created_at: nil, updated_at: nil>, #<Hardware id: 19, brand_id: 9, model: "JetLab", description: "JetLab - 600 ", typology_id: 5, sub_typology_id: nil, created_at: nil, updated_at: nil>]

この配列から1つのオブジェクトを削除したいと思います。Railsコンソールを使用して、次のようなことを試みました(最初のオブジェクトを削除してみてください)。

array.pop=#<Hardware id: 10, brand_id: 5, model: "B4200", description: "Stampante OKI B4200", typology_id: 3, sub_typology_id: 10, created_at: nil, updated_at: nil>

しかし、それは機能しません。これどうやってするの?

更新:私の目標は、配列の最後の要素をポップすることではなく、mysql検索クエリを使用して見つける必要があるジェネリックオブジェクト(配列内のすべての場所)です。

4

2 に答える 2

9
my_array = [ 1, 2, 3 ]

item = my_array.pop

puts item
# => 3

puts my_array
# => [ 1, 2 ]
于 2012-04-20T17:43:41.923 に答える
6

おそらくArray#delete関数を使用したいと思うでしょう

an_array = [1,3,4]
an_array.delete(3)
# => 3
puts an_array
# => [1,4]

Ruby のドキュメントで確認してください。

http://www.ruby-doc.org/core-1.9.3/Array.html#method-i-delete

于 2012-04-20T17:54:08.277 に答える