Haml 链接未呈现为链接

Posted

技术标签:

【中文标题】Haml 链接未呈现为链接【英文标题】:Haml link not rendering as a link 【发布时间】:2012-04-18 17:14:34 【问题描述】:

我正在尝试像这样在 HAML 中创建一个简单的链接:

link_to "Create Profile", home

但由于某种原因,它会将所有内容呈现为纯文本。

知道为什么会发生这种情况吗?

谢谢!

【问题讨论】:

【参考方案1】:

您是否忘记输入等号=

= link_to "Create Profile", home

【讨论】:

是的就是这样......新手错误..但现在我遇到了这个问题:#:0x129967e20> 和家庭的未定义局部变量或方法`home'是一个已定义的路径...知道为什么会发生错误吗? 也许home_path 是你需要的? 我没有超能力去发现你的程序中定义了哪些方法/变量。请从应用程序的根目录运行rake routes 命令并显示输出。这样我就可以知道你的程序中定义了哪些路径。【参考方案2】:

第一次运行

rake routes

在您的终端中检查所有路线。比选择正确的,例如 root_path 所以 link_to 帮助器调用看起来像:

= link_to 'Create Profile', home_path

你也可以像这样在rails控制台中练习link_to方法:

1.9.3-head :030 >   include ActionView::Helpers::UrlHelper
 => Object 
1.9.3-head :031 > link_to 'Home', '/home'
 => "<a href=\"/home\">Home</a>"

还有我的最后一条建议——“不要害怕阅读源代码”,这里是 Rails 中的 link_to 方法和其他方法的源代码:

https://github.com/rails/rails/blob/master/actionpack/lib/action_view/helpers/url_helper.rb#L236

【讨论】:

以上是关于Haml 链接未呈现为链接的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Rails 中使用 haml 制作图像链接标签?

在 RoR 网站上使用 HAML 跳转链接

ajax 响应未在单击的超链接的父 div 中呈现

如何将链接应用到 HAML 中的多行文本字符串?

反应路由器或链接未呈现

如何在 Sinatra 应用程序中链接 Sass 文件?