要素は、予想よりも深くネストされているように見えます。コードを次のように変更します:
# use '{ }' instead of 'do end' for a single-line blocks
tasksByDate = tasks.sort_by { |task| task.first[:date].to_date }
説明:
p task
の出力として表示されるもの :
[#<User id: 10, login: "my.name", hashed_password: "", date: "2016-08-29">]
これは要素の配列であることを意味します。中括弧[ ]
に注意してください 。したがって、この場合に行う必要があるのはtask.first
です。 、返されます:
#<User id: 10, login: "my.name", hashed_password: "", date: "2016-08-29">
そこから、意図したように、キーで要素の値にアクセスできるはずです。
task.first[:date]