我安装了宝石'thumbs_up','〜> 0.6.7'按指令运行必要的迁移,现在遇到一些问题,使其正常运行。感谢与我的关系,因为我是RoR的新手。我正在运行rails 4.0.0。并构建一个简单的应用程序,用户上传图像(图钉),我希望其他用户投票的图像。我遇到的问题是,登录用户只能对自己的图像进行投票,而不能投票给其他人。此外,一旦在视图中单击了vote_up或vote_against,它就什么都不做,但是正在计算投票,但是页面和闪存通知都没有被渲染。
这是我的models / users.rb:
class User < ActiveRecord::Base
# some devise stuff here...
acts_as_voter
end
模型/ pins.rb:
class Pin < ActiveRecord::Base
acts_as_voteable
end
我的pins_controller:
def vote_up
@pin = Pin.find(params[:id])
current_user.vote_for(@pin)
pin.update_vote_count
render root_path
flash[:success] = " You voted Up."
respond_to do |format|
format.js
end
end
def vote_down
@pin = Pin.find(params[:id])
current_user.vote_against(@pin)
@pin.update_vote_count
respond_to do |format|
format.js
redirect_to pins_url, notice: 'You voted Down'
end
end
这是我的观点:
<strong><%= pin.plusminus %></strong><br/>
<%= link_to "Up Vote", vote_up_pin_path(pin), :method => :post, :remote => true, :class=>'up-vote' %> |
<%= link_to "Down Vote", vote_down_pin_path(pin), :method => :post, :remote => true, :class=>'down-vote' %>
这是我的routes.rb:
resources :pins do
member do
post :vote_up
post :vote_down
post :unvote
end
end
非常感谢任何帮助,提前谢谢!
答案 0 :(得分:0)
解决了我的问题。是一个新手的错误,任何用户都可以看到投票选项我把结束标记放在我的视图投票选项之后。