铁轨中的标签网址

时间:2014-09-17 08:15:28

标签: jquery html ruby-on-rails ruby

我的rails应用程序中有一个锚标记..

<a href='app/users/<%= current_user.id %>/personal_settings'> <i class='icon-gear'></i> Personal Settings </a>

这是在我的许多html页面中呈现的东西。因此,每当我点击此<a>标记时,其中的网址就像parent_url + app/users/:id/personal_settings 有什么办法可以防止这种情况发生。每当我点击这个标签时,网址应该只是app/users/:id/personal_settings。不应该有父标签。

2 个答案:

答案 0 :(得分:2)

在您的锚标记中,我建议您使用锚点标记中的网址命名路由href提示:运行rake routes找到您的命名路由,或者您可以在routes.rb文件中设置自己的named route,并将current_user.id作为参数传递给指定路由。

例如,如果您的指定路线为users_personal_settings,那么我在此处设置您的<a>标记(请注意_path extension to the named route):

<a href='<%= users_personal_settings_path(current_user.id) %>'> 
  <i class='icon-gear'></i> Personal Settings 
</a>

答案 1 :(得分:1)

您需要将/放在您的网址之前,以便将相对网址设置为根网址,如以下代码所示:

<a href='/app/users/<%= current_user.id %>/personal_settings'> <i class='icon-gear'></i> Personal Settings </a>

或者你可以使用绝对网址:

<a href='https://www.localhost:3000/app/users/<%= current_user.id %>/personal_settings'> <i class='icon-gear'></i> Personal Settings </a>

了解absolute, and relative网址的href。


您可以使用辅助方法link_to,如下所示:

<%= link_to(users_personal_settings(current_user)) do %>
  <i class='icon-gear'></i> "Personal Settings"
<% end %>