2017-11-30 4 views
0

GroupモデルのPostモデルがあります。 Group -sは多くのPostを持つことができます。各Postには番号(1-5)が関連付けられ、各Groupには1〜5の5つのポストがあります。前の/次のボタンをGroupの各Postにスクロールさせます。モデル内の次のレコードを探す

これは私がこれまで持っているものです。

post.rb

def next_post 
    Post.where(group_id: group.id).find_each do |post| 
    post.where("number > ?", number).first 
    end 
end 

ポスト/ show.html.erb

<%= link_to "Next", group_post_path(@group, @post.next_post.first) %> 

私はエラーundefined method 'where' for #<Post:0x007f8a7a8613c8>を取得します。

def next_post 
    group.posts.where("number > ?", number).order(:number).first 
end 

とビュー:

<%= link_to "Next", group_post_path(@group, @post.next_post) %> 

答えて

2

next_postをすることができ何をすべきか

すぎてわかりません。それは本当に便利で、最後のものか最初のものかを確認する必要があるかもしれません。それぞれの前と次が表示されないようにするとエラーが発生します。

0

あなたはまた、あなたの条件を含む多くの施設を提供していacts_as_list宝石を使用することができます

関連する問題