Я пробовал делать несколько поисков и не мог найти ничего, поэтому, надеюсь, я не отправляю дубликат.Rails link_to action, post с блоком
Таким образом, API Dock's link_to docs имеет это как подпись:
link_to(options = {}, html_options = {}) do
# name
end
казалось довольно интересно, так что я решил дать этому выстрел:
<%= link_to { action: 'win', game_id: @games[0].id }, { :method => :post } do %>
<div>
<%= image_tag @games[0].img_url %>
<%= @games[0].name %>
</div>
<% end %>
Это привело к синтаксической ошибке в первом линия:
syntax error, unexpected ':', expecting '}'
...ffer.append= link_to { action: 'win', game_id: @games[0].id...
Я также пробовал с помощью скобок:
<%= link_to ({ action: 'win', game_id: @games[0].id }, { :method => :post }) do %>
Это также дал мне ошибку синтаксиса, ту же строку:
syntax error, unexpected ',', expecting ')'
...'win', game_id: @games[0].id }, { :method => :post }) do @ou...
Я смотрел на этом некоторое время, и я полагаю, что это что-то просто я пропустил, но если у кого есть какие-либо идеи , Я бы очень признателен!
Спасибо!
попробовать '{: действие => 'победа',: game_id => @games [0] .id}, {: метод =>: запись}' Я не уверен, но я думаю, это может быть потому, что вы смешиваете синтаксис 1.9 ruby с синтаксисом <1.9, то есть: key =>: value vs key: 'value – toolz
@toolz Я пробовал, но не повезло найти ... – kotakotakota
@kotakotakota Почему бы вам не использовать именованный маршрут вместо 'action: 'win', game_id: @games [0] .id'; например, 'won_game_path (id)'? – Mohamad