43308


表題の通り以下のコードを書いて配列を取得したいのですが、上手くいきません。

[code]

    video_ids = Youtube.where(channel_id:channel_id).order("youtube_created desc").select("video_id").limit(5)
    
[/code]

上のコードを使って、Youtubeモデルのvideo_idカラムが５つ取得できるようにしたいのですが、どこが間違っているのでしょうか？

よろしくお願い致します。


CC BY-SA 3.0
2018-04-17T03:14:09.193
43305
2018-04-17T04:38:54.493
26762
question
ruby-on-rails
Railsでwhereとorderとselectを使って配列が取得できない


自己解決できました。

selectを使ってカラム名を取得できると勘違いしていたのが問題で、代わりにpluckやmapを使うことが解決できました。

[code]

    video_ids = Youtube.where(channel_id:channel_id).order(youtube_created: :desc).first(5).pluck(:video_id)
    
[/code]

また、当質問は「マルチポスト」とのご指摘を受けましたが、マルチポストがマナー違反だと言うのは知りませんでした。

以後は、正しく質問サイトを利用できるように注意していきます。


CC BY-SA 3.0
2018-04-17T04:38:54.493
43308
2018-04-17T04:38:54.493
26762
43305
answer