0

3.0 アプリを 3.2.8 を実行している別のサーバーにリファクタリングしようとしていますが、ルーティング構文が少し変更されている可能性がありますか?

このroutes.rbを考えると:

root :to => 'user_sessions#new'
match 'login' => 'user_sessions#new'
match 'logout' => 'user_sessions#destroy'
match 'usermenu' => 'users#menu'
match 'adminmenu' => 'users#adminmenu'

そして、このビュー:

<% if current_user %>  
  <%= link_to "Logout", logout_path %>  |  
  <%= link_to "Main Menu", usermenu_path %>  |  
  <%= link_to_if (current_user.admin == true, "Admin Menu", adminmenu_path) %>
<% end %>

次のエラーが表示されます。

ActionView::Template::Error (/home/-/layouts/application.html.erb:19: syntax error, unexpected ',', expecting ')'
...if (current_user.admin == true, "Admin Menu", adminmenu_path...

/home/-/layouts/application.html.erb:19: syntax error, unexpected ',', expecting ')'
...er.admin == true, "Admin Menu", adminmenu_path) );@output_bu...
                          ^):
4

1 に答える 1

1

link_to_if と左括弧の間にスペースを入れることはできません

link_to_if (current_user.admin == true, "Admin Menu", adminmenu_path)

する必要があります

link_to_if(current_user.admin == true, "Admin Menu", adminmenu_path)

ルートは変更されていません。

于 2012-10-16T21:02:44.927 に答える