ruby-on-rails – Ruby on Rails:Hello World

长期的 Java开发,首次使用 Ruby开发.试图通过Rails应用程序来达到“hello world”的步伐,并且有困难.

我很乐意,我在这里遗漏了一些基本的东西.话虽如此,StackOverflow的“相似标题的问题”和Google的“ruby rails hello world”命中(或其变体)都没有澄清我所缺少的东西.

我已经通过RVM安装了ruby(v1.9.3p194),gem(1.8.23)和rails(3.2.3).我生成一个控制器:

rails generate controller common

认的“config / routes.rb”中,我有以下两个路由尝试:

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

当我最初在浏览器中运行“rails server”并加载了“http:// localhost:3000 / common”时,看到如下:

UnkNown action
The action 'index' Could not be found for CommonController

我知道这是因为“index”没有为我的公共控制器定义,所以我编辑了“app / controllers / common_controller.rb”来包含以下内容

class CommonController < ApplicationController

  def index
  end

end

我现在在浏览器中的“http:// localhost:3000 / common”中看到以下内容

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"

我看到同样的东西在根,这是有道理的.

从我发现的,这显然是由于在我的控制器中没有任何渲染,所以我相信它应该是检查“app / views / common / index.html.erb”的内容 – 但是,我做有一个文件,包含以下内容

<h1>Hello World</h1>

我还尝试将“index.html.erb”重命名为“_index.html.erb”,“index.html”和“index”,这些都是基于控制台错误“ActionView :: Missing Template”的Googling变体,以及上面类似的浏览器输出.

许多Google结果包含建议的摘要,但没有明确的指导,可以使用上述建议编辑哪些文件,或者重复上述已经采取的步骤.

如果任何人可以建议我失踪,我会很感激.

PS:我以超级用户身份运行,对此引用的所有文件的“root:root”所有权.可能导轨是作为一般用户运行的?不过如果是这样的话,似乎不会让我感觉到这么远.

解决方法

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

http://grab.by/dg6Y

这是我会尽快尝试,以确保它不是您的设置的问题:

1)cd里面的rails项目目录

2)发出这些终端命令

rails g scaffold user name:string email:string

rake db:migrate

3)访问此网址
http://localhost:3000/users

如果您的导轨设置正确,您应该看到这一点

http://grab.by/dg74

如果这些步骤不起作用,那么您的设置似乎有些奇怪的事情.

此外,请务必从您的应用程序中删除public / index.html文件.如果您不删除它,您将无法看到您的路由文件中指定的自定义页面.

如果以上方法不起作用,那么Ruby版本可能是一个问题?

希望这可以帮助!

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...