Я обновляю GiggleTrigger.com до Rails 3.1.У сайта есть крутой эффект подсветки, когда пользователи голосуют по изюминке (оранжевая вспышка) - вы можете попробовать это сами, если создадите аккаунт.
В любом случае, когда я обновился до Rails 3.1, эффект подсветки больше не работает.
Вот мой оригинальный VotesController (в который я внес незначительное изменение, о котором говорится ниже):
</p>
<pre><code>class VotesController < ApplicationController
def create
@punchline = Punchline.find(params[:punchline_id])
@vote = @punchline.votes.build params[:punchline_id]
@vote.user = current_user
respond_to do |format|
if @vote.save
format.js
format.html { redirect_to @punchline }
else
format.html { redirect_to root }
end
end
end
Который я изменил (изменив: punchline_id на: голосование в строке 4):
</p>
<pre><code>class VotesController < ApplicationController
def create
@punchline = Punchline.find(params[:punchline_id])
@vote = @punchline.votes.build params[:vote]
@vote.user = current_user
respond_to do |format|
if @vote.save
format.js
format.html { redirect_to @punchline }
else
format.html { redirect_to root }
end
end
end
Вид выглядит так:
<span id="vote_total_<%= punchline.id %>" class="punchline_votes">
<%= punchline.votes.size %>
</span>
<span id="vote_button">
<%= button_to 'giggle', punchline_votes_path(:punchline_id => punchline),
:remote => true %>
</span>
Это ajax (помещается в файл представлений / голосов как create.js.rjs):
</p>
<pre><code>page.replace_html "vote_total_#{@punchline.id}", "#{@punchline.votes.size}"
page["vote_total_#{@punchline.id}"].effect :highlight,
:color => "#f7931e",
:endcolor => "#e6e6e6"
Кнопка голосования (называемая «хихиканье») не создавала голосование, пока я не изменил: punchline_id на: голосование.Но это все еще не дает мне эффект вспышки.Я думаю, что, возможно, мне нужно каким-то образом включить этот JavaScript в конвейер активов.Любое руководство будет оценено.Благодарю.