【问题标题】:Linking to a post within Rails site from a Rails blog post produces posts/posts/article-name path从 Rails 博客文章链接到 Rails 站点内的文章会生成文章/文章/文章名称路径
【发布时间】:2019-01-02 13:40:46
【问题描述】:

我是一个相当新的开发人员 ~ 1 年,我在 Rails 中建立了一个博客网站。

我有一个设置,如果我从主页点击帖子,它会转到 www.example.com/posts/article-name。

我决定为我的“联系”和“关于我”页面制作博客文章,然后在我的 layouts/_navbar.html.erb 文件中使用此语法从导航栏中链接到它们:

<li class="nav-item">
    <%= link_to 'About', "posts/about-me", class: "nav-link #{yield(:about_active)}" %>
</li>

当我从主页单击“关于”链接时,它工作正常,将我带到 www.example.com/posts/about-me

但是,如果我在一篇博客文章中并单击“关于”页面,它会将我带到 www.example.com/posts/posts/about-me

我对如何解决这个问题有点迷茫。我什至尝试对链接进行硬编码,但这似乎不起作用。任何帮助将不胜感激。

【问题讨论】:

标签: ruby-on-rails hyperlink blogs


【解决方案1】:

关于绝对路径和相对路径,您需要了解一些事情。

相对路径是你尝试过的。

试试绝对路径

<%= link_to 'About', "/posts/about-me", class: "nav-link #{yield(:about_active)}" %>

【讨论】:

  • 就像 Nithin 建议的那样,您忘记了路径开头的 / ,这使它成为相对的。这样做可以解决您的问题。更好的做法是使用 rails path helpers 而不是硬编码你的 url。
  • 啊,我明白了。我没有注意到前面的 /。谢谢尼廷!
猜你喜欢
  • 1970-01-01
  • 2015-08-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-29
  • 2011-06-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多