Ruby On Rails中的Hello World入门教程无法正常工作

时间:2018-04-23 16:12:26

标签: ruby-on-rails ruby

您好我是Ruby on Rails的新手。这是我的Windows 10机器上的安装程序

C:\Users\Jaiel>ruby -v
ruby 2.3.3p222 (2016-11-21 revision 56859) [i386-mingw32]

C:\Users\Jaiel>sqlite3 --version
3.8.7.2 2014-11-18 20:57:56 2ab564bf9655b7c7b97ab85cafc8a48329b27f93

C:\Users\Jaiel>rails --version
Rails 5.1.6

我正在按照分步教程表单进行操作 http://guides.rubyonrails.org/getting_started.html  但我得到一个错误

我已经

C:\Users\Jaiel\Desktop\Test>rails new blog

然后我跑了

C:\Users\Jaiel\Desktop\Test>cd blog
C:\Users\Jaiel\Desktop\Test\blog>rails server

并打开

http://localhost:3000/ 

并且看到了" Yay,你在Rails"网页

然后我跑了

C:\Users\Jaiel\Desktop\Test\blog>rails generate controller Welcome index
  create  app/controllers/welcome_controller.rb
   route  get 'welcome/index'
  invoke  erb
  create    app/views/welcome
  create    app/views/welcome/index.html.erb
  invoke  test_unit
  create    test/controllers/welcome_controller_test.rb
  invoke  helper
  create    app/helpers/welcome_helper.rb
  invoke    test_unit
  invoke  assets
  invoke    coffee
  create      app/assets/javascripts/welcome.coffee
  invoke    scss
  create      app/assets/stylesheets/welcome.scss

我打开了

app/views/welcome/index.html.erb 

文件在我的文本编辑器中。删除了文件中的所有现有代码,并将其替换为以下单行代码:

<h1>Hello, Rails!</h1>

然后我打开了文件

config/routes.rb 

在我的编辑器中编辑它看起来像这样:

Rails.application.routes.draw do
get 'welcome/index'
root 'welcome#index'
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
end

但现在我启动服务器

C:\Users\Jaiel\Desktop\Test\blog>rails server

然后转到

http://localhost:3000/

现在出现错误:

在控制台和错误页面中显示

Started GET "/" for 127.0.0.1 at 2018-04-23 18:05:56 +0200
Processing by WelcomeController#index as HTML
Rendering welcome/index.html.erb within layouts/application
Rendered welcome/index.html.erb within layouts/application (0.5ms)
Completed 500 Internal Server Error in 371ms

ActionView::Template::Error (TypeError: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.):
4:     <title>Blog</title>
5:     <%= csrf_meta_tags %>
6:
7:     <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track': 'reload' %>
8:     <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
9:   </head>
10:

app/views/layouts/application.html.erb:7:in `_app_views_layouts_application_html_erb__839057971_94964316'

所以第7行给出了错误:(

错误从德语翻译为

(TypeError: Object doesn't support this property or method)

这是因为行

root 'welcome#index'

我加入了

C:\Users\Jaiel\Desktop\Test\blog\config\routes.rb

这里有什么问题。它是pofficial指南和第一个Hello World示例,但它已经搞砸了......

更新:我删除了该行

// = require_tree。

C:\Users\Jaiel\Desktop\Test\blog\app\assets\javascripts\application.js

它有效。但这是一个荒谬的解决方案,如ExecJS::RuntimeError on Windows trying to follow rubytutorial

所述

0 个答案:

没有答案