为什么我无法在localhost上的rails应用程序上显示我的红宝石?

时间:2019-11-30 07:56:19

标签: ruby-on-rails ruby-on-rails-6

我正在尝试从codecademy中显示一个非常简单的应用,这是我在浏览器中遇到的错误:

  

PagesController#welcome缺少用于请求格式的模板:text / html

     

注意!   除非另有说明,否则Rails期望有一个动作来渲染具有相同名称的模板,   包含在以其控制器命名的文件夹中。如果此控制器是响应为204(无内容)的API,   不需要模板,那么尝试通过浏览器访问它时就会发生此错误,   因为我们希望为此类请求呈现HTML模板。如果是这样,请继续。

My directory

pages_controller.rb

class PagesController < ApplicationController
    def welcome
    end
end

routes.rb

Rails.application.routes.draw do
root ‘pages#welcome’
end

application.html.erb

<!DOCTYPE html>
<html>
  <head>
    <title>Portfolio</title>
    <link href="https://fonts.googleapis.com/css?family=Roboto:100,300,500,700&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
    <%= csrf_meta_tags %>
    <%= csp_meta_tag %>

    <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
    <%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>

  </head>

  <body>
    <%= yield %>
  </body>
</html>

welcome.html.erb

<h1>Hello</h1>

运行“ rails服务器”并在我的浏览器中出现上述错误。据我所知,文件位于正确的位置且类型正确... Rails v 6.0.1

1 个答案:

答案 0 :(得分:0)

显然,问题在于我的项目位于一个文件夹中,该文件夹的标题中有空格。

将项目移到另一个文件夹后,它现在可以工作了。

这在6.0.1上很重要