irl*_*irl 0 layout ruby-on-rails
我正试图在rails应用程序上设计我的ruby.我创建了views/layouts/posts.html.erb,它描绘了我PostsController
的观点.
我想添加一个始终位于页面顶部的主栏,无论用户正在查看什么视图.我认为这就是原样views/layouts/application.html.erb
.
这似乎与我一致:http: //jacqueschirag.wordpress.com/2007/08/02/rails-layout-and-nested-layout-basics/
整个Rails应用程序(所有控制器的所有视图)将使用此布局:
views/layouts/application.rhtml
单个控制器中的所有视图都将使用此布局.例如,weclome_controller.rb的布局将使用此布局.请注意,'_controller'不会用于布局:
views/layouts/welcome.rhtml
我究竟做错了什么?
这就是我在我身上所拥有的 application.html.erb
<div id="top-bar">
<div id="user_nav">
<% if current_user %>
<%= link_to "My Profile", current_user %>
<%= link_to "Logout", logout_path %>
<% else %>
<%= link_to "Register", new_user_path %>
<%= link_to "Login", login_path %>
<% end %>
</div>
</div>
<%= yield %>
Run Code Online (Sandbox Code Playgroud)
无论你的布局,application.html.erb
并posts.html.erb
应使主杆作为部分:
<%= render :partial => 'layouts/main_bar' %>
Run Code Online (Sandbox Code Playgroud)
所有布局都包含<html>
包装页面的元素; 你没有一个布局环绕另一个.