0
私はデータベースを持っていますが、テーブル全体を長さでソートする必要がありますが、スタックがあります。DataMapperの要素を並べ替える
require 'dm-core'
require 'dm-migrations'
require 'sinatra/reloader'
DataMapper.setup(:default, "sqlite3://#{Dir.pwd}/development.db")
class Item
include DataMapper::Resource
property :id, Serial
property :length, Integer
end
...
DataMapper.finalize
post '/items/sort/?' do
5.times do
val = rand(100)
Item.create(length: val)
end
Item.update(Item.sort_by { |_key, value| value })
redirect to('/items')
end
どうlength
要素によって並べ替えられて、私のデータベースが更新されますように私は、それを正しく行うことができますか?ありがとうございました。
何をしますか? 'Item.update(Item.sort_by {| _key、value | value})'ステートメントの意味は何ですか? – marmeladze
ID長のペアを持つデータベースを塗りつぶしたので、このテーブルを長さでソートします。例えば、テーブルに '@id = 1、@ length = 3'、' @id = 2、@ length = 2'、 '@id = 3、@ length = 4'という文字列を入れたいのですが、 id = 2、@ length = 2'、@ id = 1、@ length = 3、@ id = 3、length = 4'です。この文は、データベースがソートされたもので更新されるべきであることを意味します( 'id => length'ハッシュのすべてを表すと仮定します)。 – NLis