1

所以我一直在做这个项目,但是我用于投票系统的竖起大拇指的 gem 不能正常工作。

如果您访问 www.leapfm.com,您会发现出于某种原因,即使是 2 票的歌曲也排在 1 票的歌曲之下。这没有任何意义。

现在您可能认为上传日期起了作用,但在这种情况下它没有。我上传了一首全新的歌曲并创建了两个帐户两次投票,但它仍然低于歌曲的 1 票。

我该怎么做才能让这个工作?

编码

index.html.erb 代码段

  <%=link_to image_tag('arrow.gif'), vote_for_song_path(song), :remote => true, :method => :put  if controller.action_name == "index" %>

song_controller.rb 片段

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

  # GET /Songs
  # 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)
      get_last_song
    end
  end

这里的宝石

4

1 回答 1

0

根据文档,您应该尝试:

@songs = Song.plusminus_tally.order('plusminus_tally DESC').paginate(:page => params[:page], :per_page => 15)

于 2013-08-05T06:02:54.290 回答