2014-01-12 36 views
0

後嘗試做了幾次搜索這一點,並找不到任何東西,所以希望我不張貼重複。Rails的link_to行動,與塊

所以,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... 

我一直在看這一段時間,我算出它的一些簡單的我錯過了,但如果任何人有任何想法,我真的很感激它!

謝謝!

+0

嘗試'{:action =>'win',:game_id => @games [0] .id},{:method =>:post}' 我不確定,但我認爲這可能是因爲您將1.9 ruby​​語法與<1.9語法混合在一起,即:key =>:value vs key:'value – toolz

+0

@toolz我試過但沒有運氣可以找到... – kotakotakota

+1

@kotakotakota你爲什麼不使用命名路線而不是'action:'win',game_id:@games [0] .id';例如'won_game_path(id)'? – Mohamad

回答

0

傻逼我!這是link_to(之間的空格...