link_to中的语法错误

时间:2013-04-24 10:43:20

标签: ruby-on-rails

<%= link_to('Forside', '/startpages', html_options = {"class", (params[:controller] == "startpages") ? "menu-highlighted" : ""}) + " | " %>

使用Rails 3.2.11

我得到的错误是

syntax error, unexpected ',', expecting tASSOC
...ages', html_options = {"class", (params[:controller] == "sta...

3 个答案:

答案 0 :(得分:1)

{"class", (params[:controller] == "startpages") ? "menu-highlighted" : ""}

应该是

{"class" => (params[:controller] == "startpages") ? "menu-highlighted" : ""}

答案 1 :(得分:1)

link_to

的更简单版本
= link_to('Forside', '/startpages', :class => ('menu-highlighted' if params[:controller] == 'startpages'))

答案 2 :(得分:0)

默认情况下,第三个参数用作html_options。你不必在link_to语句中使用它。