链接到基于当前页面添加到 URL 的个人资料页面

Linking to profile page adding to URL based on current page

正在使用 ERB 进行 Rails 项目的 Ruby。我正在尝试 link 一个用户到他们的个人资料页面。例如,单击下拉菜单 link,然后单击个人资料应该会将您带到站点。com/users/1 如果您以用户 1 身份登录。

<a class="dropdown-item" href="users/<%= current_user.id %>">Profile</a

这适用于所有页面,但是当我转到个人资料页面时,由于某种原因它会更改为站点。com/users/users/1 如果我在个人资料上单击个人资料 link给我一个错误。有什么建议吗?

rails的方法是使用link_to。它会根据您的主机自动更新 url。

所以像这样的事情必须完成这项工作:

<%= link_to "Profile", user_path(current_user) %>

<%= link_to current_user.email, user_path(current_user) %>

最好遵循约定:

<%= link_to "Profile", user_path(current_user), class: "dropdown-item" %>

另一种选择是:

<a class="dropdown-item" href="<%= user_path(current_user) %>">Profile</a>

但是,如果您坚持自己的方式,请尝试在“users/<%= current_user.id %>”之前添加一个斜杠 (/),如下所示:

<a class="dropdown-item" href="/users/<%= current_user.id %>">Profile</a>