Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 关于RubyonRails教程中的布局_Ruby On Rails_Ruby_Railstutorial.org - Fatal编程技术网

Ruby on rails 关于RubyonRails教程中的布局

Ruby on rails 关于RubyonRails教程中的布局,ruby-on-rails,ruby,railstutorial.org,Ruby On Rails,Ruby,Railstutorial.org,我正在学习RubyonRails教程中的RubyonRails。 我做了测试,但发现了错误。 哪里错了 test_should_get_home#StaticPagesControllerTest (1451158535.88s) ActionView::Template::Error: ActionView::Template::Error: undefined method `full_title' for #<#<Class:0x007ff2da1e0bc0&g

我正在学习RubyonRails教程中的RubyonRails。 我做了测试,但发现了错误。 哪里错了

test_should_get_home#StaticPagesControllerTest (1451158535.88s)
ActionView::Template::Error:         ActionView::Template::Error: undefined method `full_title' for #<#<Class:0x007ff2da1e0bc0>:0x007ff2da1dbeb8>
            app/views/layouts/application.html.erb:4:in `_app_views_layouts_application_html_erb__2067729572228884173_70340508945500'
            test/controllers/static_pages_controller_test.rb:9:in `block in <class:StaticPagesControllerTest>'
        app/views/layouts/application.html.erb:4:in `_app_views_layouts_application_html_erb__2067729572228884173_70340508945500'
        test/controllers/static_pages_controller_test.rb:9:in `block in <class:StaticPagesControllerTest>'
test_应该_get_home#StaticPagesControllerTest(1451158535.88s)
ActionView::Template::Error:ActionView::Template::Error:未定义的方法“完整标题”#
app/views/layouts/application.html.erb:4:in`_app\u views\u layouts\u application\u html\u erb\u 2067729572228884173\u 70340508945500'
test/controllers/static\u pages\u controller\u test.rb:9:in'block in'
app/views/layouts/application.html.erb:4:in`_app\u views\u layouts\u application\u html\u erb\u 2067729572228884173\u 70340508945500'
test/controllers/static\u pages\u controller\u test.rb:9:in'block in'

我他妈的不确定,但我假设你会跟随我

似乎还没有定义完整的标题

只要写

@full_title = "Ruby on Rails Tutorial Sample App"

希望这对你有帮助

似乎没有定义方法
完整的\u title

确保它在
app/helpers/application\u helper.rb
中正确定义

这是我的
app/helpers/application\u helper.rb
文件:

module ApplicationHelper
  def full_title(title="")
    base_title = "Ruby on Rails Tutorial Sample App"
    if title.blank?
      base_title
    else
      "#{title} | #{base_title}"
    end
  end
end
并且不要忘记编辑
app/views/layouts/application.html.erb
文件:

<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 %>
  <%= render "layouts/shim" %>
</head> 

正确%>
正确%>
根据
full\u title
方法的实现,如果将标题作为参数传递给该方法,则返回
base\u title
(即字符串
Ruby on Rails教程示例应用程序
),或
“您选择的标题”| Ruby on Rails教程示例应用程序
,您可以在每页上放置
。)


希望有帮助

您是否错过了运行迁移?@Kosuke Ogawa已解决您的问题或仍面临任何问题?未定义的方法“完整标题”,不可变只需使用static\u pages\u controller\u test.rb更新您的问题。让我们知道我们的sol是否为您工作?