我最近决定使用Ruby on Rails,Passenger(mod_rails)/ Apache和Capistrano的组合将我的站点测试部署到我的家庭服务器上进行部署。我正在尝试渲染我的主页,目前它没有与数据库相关的元素,而且非常简单。
我要渲染的文件是:
<footer>
<nav class="round">
<ul>
<li><%= link_to "About", '#', %></li>
<li><%= link_to "Contact", '#', %></li>
</ul>
</nav>
</footer>
我确定它的语法很简单,但是我认为错误日志部分很重要:
Rendered layouts/_footer.html.erb (9.4ms)
Completed 500 Internal Server Error in 276ms
ActionView::Template::Error (/var/rails/releases/20120309031203/app/views/layouts/_footer.html.erb:4: syntax error, unexpected ')'
...pend= ( link_to "About", '#', );@output_buffer.safe_concat('...
... ^
/var/rails/releases/20120309031203/app/views/layouts/_footer.html.erb:5: syntax error, unexpected ')'
...nd= ( link_to "Contact", '#', );@output_buffer.safe_concat('...
... ^
/var/rails/releases/20120309031203/app/views/layouts/_footer.html.erb:10: syntax error, unexpected keyword_ensure, expecting ')'
/var/rails/releases/20120309031203/app/views/layouts/_footer.html.erb:12: syntax error, unexpected keyword_end, expecting ')'):
1: <footer>
2: <nav class="round">
3: <ul>
4: <li><%= link_to "About", '#', %></li>
5: <li><%= link_to "Contact", '#', %></li>
6: </ul>
7: </nav>
app/views/layouts/application.html.erb:16:in `_app_views_layouts_application_html_erb___909272938_79472450'
我希望这已经足够了,但如果您需要更多,请询问。 感谢。
答案 0 :(得分:2)
那些在那里做的逗号是什么,挂在link_to调用的末尾?
<li><%= link_to "About", '#', %></li>
<li><%= link_to "Contact", '#', %></li>
尝试:
<li><%= link_to "About", '#' %></li>
<li><%= link_to "Contact", '#' %></li>
答案 1 :(得分:2)
根本原因是这行代码:
<li><%= link_to "About", '#', %></li>
这里,link_to()方法只接受2个参数(“about”,“#”),但最后有一个“,”。所以它有错误。
此外,如果您只想呈现如下链接:
<a href="#">About</a>
请改用“link_to_function”。 e.g。
<li><%= link_to_function "About", '#' %></li>