2012-04-24 24 views
13

长期Java开发者,首次Ruby开发者。尝试使用Rails应用程序访问“hello world”步骤,但遇到困难。Ruby on Rails:Hello World

我敢肯定,我很想念这里一些基本的东西。这就是说,没有一个StackOverflow的“类似标题的问题”,也没有谷歌的“红宝石轨道问候世界”命中(或其变种)澄清了我失踪。

我有红宝石(v1.9.3p194),通过RVM安装宝石(23年8月1日)和导轨(3.2.3)。我生成使用控制器:

rails generate controller common 

在默认“配置/ routes.rb中”,我有以下两个路由尝试:

Web::Application.routes.draw do 
    root :to => "common#index" 
    match ':controller(/:action(/:id))(.:format)' 
end 

当我最初运行“导轨服务器”和加载“ HTTP://本地主机:3000 /通用“在浏览器中,我看到了以下内容:

Unknown action 
The action 'index' could not be found for CommonController 

我了解到这是因为‘指数’是不是我常用的控制器进行定义,所以我主编的”应用程序/控制器/ common_controller.r B”包含以下内容:

class CommonController < ApplicationController 

    def index 
    end 

end 

我现在看到下面的 “HTTP://本地主机:在浏览器中3000 /常见”:

Template is missing 
Missing template common/index, application/index with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]}. Searched in: * "/coding/workspace/[My] Toolbag/web/app/views" 

我看到同样的事情在根,这是有道理的。

从我发现,这显然是由于没有任何渲染在我的控制器,所以我认为应该改为检查在“应用程序/视图/普通/ index.html.erb”的东西 - 但是,我有一个文件存在,包含以下内容:

<h1>Hello World</h1> 

我还试图重新命名“index.html.erb”到“_index.html.erb”,“的index.html”,和“索引“,全部基于控制台错误”ActionView :: Missing Template“的Googling变体以及上面类似的浏览器输出。

许多谷歌搜索结果中包含的建议片段,但没有哪个文件(S)与编辑明确的指导意见说,要不然用的,我已经上面已经采取的步骤重复。

如果还有人建议我错过了什么,我将不胜感激。

PS:我正在为超级用户,具有:此处引用的所有文件的“根根”的所有权。可能导轨是否以普通用户身份运行?但是,如果情况确实如此,似乎并不会让我变得这么远。

+0

我不知道你的问题的答案,但如果我可以推荐,请查看http://ruby.railstutorial.org/。毫无疑问,它是网络上最好的Rails教程。它也有一个很棒的“hello world”像教程。 – sunnyrjuneja 2012-04-24 06:41:17

回答

10

哇。我实际上只是偶然发现了实际的根问题:

我在名称中有一个括号的文件夹中创建我的项目 - 也就是说,我从“/ coding/workspace/[我的]工具包“。

今晚我碰巧再次尝试在“/编码/工作区”,它终于奏效了。于是我测试“轨道新的网络”从下列位置中来充实我的怀疑:

/coding/workspace/test1 
/coding/workspace/test 2 
/coding/workspace/test [3] 
/coding/workspace/test [4 
/coding/workspace/test ]5 
/coding/workspace/test [6/subfolder 

怀疑证实。文件夹3,4,6中的Rails项目演示了我在这个问题中描述的问题,而文件夹1,2,5中的rails项目工作得很好。

具体来说,这个问题是一个开放的支架在路径的任何地方:“[”

我使用Linux Mint的。这个问题可能更广泛地适用,虽然我还没有试图在其他发行版,Windows或Mac上重新制作。

随着许多感谢Brett Sanders所有我我的做法应该是正确的他一再援助和确认,我提交这个答案和标记这一个是正确的,如果任何人遇到了同样的问题。

+0

很高兴你想通了。应该可能在文章 – 2012-04-26 18:09:35

+0

上添加一个linux标记我实际上并不倾向于。我刚刚在Mac OS X 10.7.3上确认了相同的错误。除非有人确认这不会发生在Windows上,那么这似乎是一个无处不在的问题。 – DreadPirateShawn 2012-04-27 05:58:31

+1

注意:现在作为Rails GitHub库中的一个错误提交:https://github.com/rails/rails/issues/6010 – DreadPirateShawn 2012-04-27 06:19:58

10

这很奇怪。我只是重复你的步骤,并得到它的工作(使用rails 3.2.3和ruby 1.9.3-p0),当访问localhost:3000/common时,我得到了“Hello World”。“

http://grab.by/dg6Y

这里是我想尝试真正的快,以确保它不是你的设置有问题:

1)你的Rails项目目录内CD

2)问题,这些终端命令

导轨克支架用户名:字符串电子邮件:串

耙分贝:迁移

3)访问这个URL http://localhost:3000/users

如果导轨设置正确,你应该可以看到这个

http://grab.by/dg74

如果这些步骤不起作用,那么你的设置似乎有点奇怪。

此外,一定要从您的应用程序中删除public/index.html文件。如果你不删除它,你将无法看到你的路径文件中指定的自定义根页面。

如果上述不起作用,可能是您的Ruby版本有问题?

希望这会有所帮助!

+0

即使我还没有固定我的奇球问题,我仍然接受这个答案。鉴于你确认我应该有正确的方法,我能够在另一台计算机上重新确认我的东西应该工作。谢谢! – DreadPirateShawn 2012-04-25 02:53:32

+0

我刚刚尝试使用红宝石(v1.9.3p194),宝石(1.8.23)和铁轨(3.2.3)。仍然没有问题,所以似乎不像Ruby版本是问题。你尝试过脚手架吗? – 2012-04-25 04:50:21