Простой вопрос RoR ... Я изучаю ROR и делаю простое приложение для голосования. Кандидаты перечислены в таблице и имеют ссылки upvote/downvote рядом с их именем. Я пытаюсь сделать так, чтобы все пользователи делали это по ссылке, подсчет голосов обновлен, и они перенаправляются на начальную страницу. Я не использую строительные леса. По какой-то причине это действие не делает ничего близкого к тому, что я хочу:Ruby on Rails: обновить ссылки DB
def upvote
@name = Name.find(params[:id])
@name[:votes] += 1
respond_to do |format|
if @name.update_attributes(params[:name])
flash[:notice] = 'Candidate was upvoted'
format.html = { redirect_to :action => "index" }
format.xml = { head :ok }
else
format.html = { render :action => "index" }
format.xml = { render :xml => @name.errors, :status => :unprocessable_entity }
end
end
end
У меня есть связь в представлении вызывающей правильное действие, он пытается назвать: шоу, хотя.
пожалуйста, не судите меня слишком строго лол ...
он по-прежнему ничего не делает, просто по какой-то причине переходит к действию «шоу» ... в любом случае спасибо за вашу помощь, моя проблема не должна быть в контроллере ... –
Да, мне показалось странным, что шоу действие вызывается. Это поможет, если вы также можете показать код в представлении, которое вы используете для создания ссылки. Кроме того, если у вас настроены какие-либо маршруты, это также полезно знать. – Schrockwell
<% @ names.each do | name | %>