0

だから、これは私が取り組んでいるプロジェクトです。私はついに、正しくランク付けするための高評価の宝石を手に入れました。

ただし、現在、ページネーションは表示されなくなりました。

コード

song_controller.rb スニピット

 # GET /Songs.json
  def index
    if params[:genre]
      @songs = Song.tagged_with(params[:genre]).paginate(:page => params[:page], :per_page => 15)
      get_last_song
    else      
      @songs = Song.order('plusminus').paginate(:page => params[:page], :per_page => 15) 
      @songs = Song.plusminus_tally.order('plusminus_tally DESC').paginate(:page => params[:page], :per_page => 15)
      get_last_song
    end
  end

 def vote_for
      @song = Song.find(params[:id])
      current_user.vote_for(@song)
      @song.plusminus = @song.votes_for
      @song.save
      respond_to do |format|
        format.js { render 'update_votes' }
      end
  end

index.html.erb

<div id="song_list">
      <%= render @songs %>
    </div>
  </div>
<div class="pagination-centered">
  <ul class="pagination">
    <div class="prev">
      <% if @songs.previous_page %>
        <%= link_to "Back", params.merge(page: @songs.previous_page) %>
      <% end %>
    </div>
    <div class="next">
      <% if @songs.next_page %>
        <%= link_to "More", params.merge(page: @songs.next_page) %>
      <% end %>
4

2 に答える 2

0

postrgres の order desc が mysql のように機能しない: Postgres のソートの問題

  def index
    if params[:genre]
      @songs = Song.tagged_with(params[:genre]).paginate(:page => params[:page], :per_page => 15)
      get_last_song
    else      
      @songs = Song.order('plusminus desc nulls last').paginate(:page => params[:page], :per_page => 15)
      get_last_song
    end
  end
于 2013-08-05T08:11:38.740 に答える