Ruby on rails 无法在RoR Hartl教程中呈现更改

Ruby on rails 无法在RoR Hartl教程中呈现更改,ruby-on-rails,ruby,Ruby On Rails,Ruby,我刚刚开始了MichaelHartl编写的RubyonRails教程的第5课:填充布局并添加一些结构 但是,我的更改自第3课后期以来一直没有呈现。当我更改任何页面(home.html.erb、about.html.erb等)时,我没有问题。但诸如登录和标题之类的事情不会改变 application.html.erb <!DOCTYPE html> <html> <head> <title><%= full_title(yield(

我刚刚开始了MichaelHartl编写的RubyonRails教程的第5课:填充布局并添加一些结构

但是,我的更改自第3课后期以来一直没有呈现。当我更改任何页面(home.html.erb、about.html.erb等)时,我没有问题。但诸如登录和标题之类的事情不会改变

application.html.erb

<!DOCTYPE html>
<html>
  <head>
    <title><%= full_title(yield(:title)) %></title>
    <%= stylesheet_link_tag "application", media: "all",
                                           "data-turbolinks-track" => true %>
    <%= javascript_include_tag "application", "data-turbolinks-track" => true %>
    <%= csrf_meta_tags %>
    <!--[if lt IE 9]>
    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
  </head>
  <body>
    <header class="navbar navbar-fixed-top navbar-inverse">
      <div class="navbar-inner">
        <div class="container">
          <%= link_to "sample app", '#', id: "logo" %>
          <nav>
            <ul class="nav pull-right">
              <li><%= link_to "Home",    '#' %></li>
              <li><%= link_to "Help",    '#' %></li>
              <li><%= link_to "Sign in", '#' %></li>
            </ul>
          </nav>
        </div>
      </div>
    </header>
    <section>
      <%= yield %>
    </section>
  </body>
</html>
SampleApp::Application.routes.draw do
  get "pages/home"
  get "pages/contact"
  get "pages/about"
end
<h1>Sample App</h1>
<p>This is the home page for the <a href="http://railstutorial.org">Ruby on Rails Tutorial</a> sample application.</p>
home.html.erb

<!DOCTYPE html>
<html>
  <head>
    <title><%= full_title(yield(:title)) %></title>
    <%= stylesheet_link_tag "application", media: "all",
                                           "data-turbolinks-track" => true %>
    <%= javascript_include_tag "application", "data-turbolinks-track" => true %>
    <%= csrf_meta_tags %>
    <!--[if lt IE 9]>
    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
  </head>
  <body>
    <header class="navbar navbar-fixed-top navbar-inverse">
      <div class="navbar-inner">
        <div class="container">
          <%= link_to "sample app", '#', id: "logo" %>
          <nav>
            <ul class="nav pull-right">
              <li><%= link_to "Home",    '#' %></li>
              <li><%= link_to "Help",    '#' %></li>
              <li><%= link_to "Sign in", '#' %></li>
            </ul>
          </nav>
        </div>
      </div>
    </header>
    <section>
      <%= yield %>
    </section>
  </body>
</html>
SampleApp::Application.routes.draw do
  get "pages/home"
  get "pages/contact"
  get "pages/about"
end
<h1>Sample App</h1>
<p>This is the home page for the <a href="http://railstutorial.org">Ruby on Rails Tutorial</a> sample application.</p>
示例应用程序
这是示例应用程序的主页


同样,我的页面只是呈现了第三章中的一个例子,没有样式表,导航栏没有更改,标题不正确(localhost:3000/pages/home),而不是Ruby on Rails示例应用程序。

您正在使用的类navbar、navbar fixed top没有css,这些都是twitterbootstrap2.3.2的一部分,twitterbootstrap2.3.2是css类和javascript函数的集合。因此,要使此代码正常工作,首先在Railsproject/app/assets/stylesheets/目录中包含bootstrap.css文件。您可以在此处下载引导编译文件 注意:bootstrap.css位于bootstrap-2.3.2/dist/css/目录中。只要复制那个文件,一切都会好起来的

您在application.html.erb语法中出错

不要使用标签来定义导航类,而是使用标签。 因此,正确的语法是:

<nav class="navbar navbar-fixed-top navbar-inverse">
  <div class="navbar-inner">
    <div class="container">
      <%= link_to "sample app", '#', id: "logo" %>
      <nav>
        <ul class="nav pull-right">
          <li><%= link_to "Home",    '#' %></li>
          <li><%= link_to "Help",    '#' %></li>
          <li><%= link_to "Sign in", '#' %></li>
        </ul>
      </nav>
    </div>
  </div>
</nav>


我认为这应该能解决问题

不幸的是,这也不起作用。你知道这是为什么吗?折叠导航栏,你在使用twitter bootstrap 3吗?转到:getbootstrap.com在该站点中签出组件部分。你会发现很多模板和代码。最好使用它并进行更改,而不是以物理方式编写所有内容