Rails 3.2.11第一个测试应用程序 - 模板丢失

时间:2013-01-13 20:20:36

标签: ruby-on-rails

我是ruby on rails Web-Programming的新手。今天我尝试设置Ruby编程语言和Rails框架。 Ruby工作正常,我做了第一个Test-Class Successfull。只有设置我的Rails框架才能为我准备一些问题。

我做了一个test_app,我试图运行它。

rails new test_app
rails s

我意识到路线在routes.rb中被评论过,我对它进行了注释。 我将#root :to => 'welcome#index'更改为root :to => 'welcome#index'

我也意识到我没有页面welcome/index的控制器,我创建了它 与rails g controller Welcome index

但是它不起作用了吗?有人有想法吗?

Template is missing
Missing template welcome/index, application/index with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]}. Searched in: * "D:/Davide Giunta/Development/workspace[ruby]/test_app/app/views"

Ruby Version: 1.9.3p368
Gem Version: 1.8.24
Rails Version: 3.2.11

2 个答案:

答案 0 :(得分:3)

rails g controller只会创建控制器部分,您还需要创建相应的视图文件,在这种情况下,您需要app/views/welcome/index.html.erb

使用scaffold(仅在学习时)或resource用于您的生成器可能会更快。 (这些天我通常都是手工制作)

答案 1 :(得分:0)

Jim Deville的回答是正确的。您需要创建控制器操作(action_name.html.erb)的相应视图文件,并将其放在名为控制器的子目录下的视图目录中。

在此处查看Rails的基础知识http://guides.rubyonrails.org/getting_started.html

如果您想使用控制器,视图和模型创建操作,则应使用rails g scaffold SomeName,另请参阅http://guides.rubyonrails.org/getting_started.html#getting-up-and-running-quickly-with-scaffolding