Ruby on rails 2.0.2傻瓜入门之Hello world

毫不例外,和所有其他的开源项目一样,如果你想进入Ruby on rails的世界,会发现异常的的艰难,文档很少,而且很零散,
下载下来的文件缺乏基本的说明,本人的亲身体验就是一个典型例子,不废话了,现在开始介绍:
一、安装环境<windows>
Ruby on rails网站:http://www.rubyonrails.org/
1、在这里下载Ruby 1.8.6  http://rubyforge.org/frs/?group_id=167
其中已经包含rubygems 0.9.4,就不需要额外下载了,或者你也可以直接升级到1.1.1版本
2、如果你的网络够快,运行下面命令下载程序包自动安装
gem install rails --include-dependencies
否则,下载stand-alone packages 来手工安装,这里包含几个文件:
rails-2.0.2.zip http://rubyforge.org/frs/download.php/29361/rails-2.0.2.zip
rails-2.0.2.gem http://rubyforge.org/frs/download.php/29554/rails-2.0.2.gem
网上有文章介绍,将rails-2.0.2.zip放在ruby的安装目录,运行gem install rails就可以自动解压安装了,呵呵,我试了很多次,好像这种方法根本就是不行,
原作者也是语焉不详,咱们就不深究了,说到底,rails运行需要下面的依赖包,然后才能安装rails
activesupport
activerecord
actionpack
actionmailer
activeresource
其实这些依赖包已经包含在rails-2.0.2.zip文件中的vendor\rails目录下面,依次进入对应目录下的pkg子目录中就有相应的gem文件,安装这些就可以了。例如

C:\rails\vendor\rails\activesupport\pkg>dir
 驱动器 C 中的卷没有标签。
 卷的序列号是 
3754-1BDB

 C:
\rails\vendor\rails\activesupport\pkg 的目录

2008-04-22  17:51    <DIR>          .
2008-04-22  17:51    <DIR>          ..
2007-12-16  19:05    <DIR>          activesupport-2.0.2
2007-12-16  19:05           234,496 activesupport-2.0.2.gem
2007-12-16  19:05           233,039 activesupport-2.0.2.tgz
2007-12-16  19:05           285,376 activesupport-2.0.2.zip
               
3 个文件        752,911 字节
               
3 个目录  6,119,768,064 可用字节

C:
\rails\vendor\rails\activesupport\pkg>gem install activesupport
所以手工安装就只需要安装上面包,最后再安装rails-2.0.2.gem就可以了。
安装完毕之后,运行rails -v,可以显示版本Rails 2.0.2

二、Hello world起步
说句实话,第一个rails web程序有谁希望是一个连接mysql或者其他数据库的例子,至少我不这样希望,但是在网上流行的很多入门中第一个例子就是连接数据库,演示一个不用写什么代码就可以实现数据的增、删、改的例子,尽管很炫,但是对于我等入门者来说还是太麻烦了,Hello world才是我们希望要的。
(注:不少流行的电子书、教程也是这样数据库的例子,罗列一下:《Rails Cookbook》《Rails for Java Developers》《Rails Recipes
官方介绍的教程:http://www.onlamp.com/pub/a/onlamp/2006/12/14/revisiting-ruby-on-rails-revisited.html
Rails 2.0 入门指导 http://www.lupaworld.com/action_viewstutorial_itemid_10205.html
而且有一个问题,2.0的有些东西和1.X相比变化了,所以网上很多教程是基于1.x的,不少人又要走弯路了!
1、创建WEB应用
运行rails c:\ruby\projects\sample创建一个需要的sample应用,该操作会建立一些基本的目录框架、必需的文件,建好后可以进入目录看看效果。

2、启动WEB Server,测试效果
进入c:\ruby\projects\sample目录,运行ruby script/server启动服务器,然后打开网址http://localhost:3000/可以看到初始页面

3、准备Sqllite,很遗憾,我们不想涉及数据库,可以还是会遇到这个东东,在config\database.yml文件中就可以看到它的影子,没办法,这个必须安装,否则后面会遇到错误。
这里下载http://rubyforge.org/frs/?group_id=254 文件sqlite3-ruby-1.2.1-mswin32.gem,运行gem install sqlite3-ruby安装。
还必须下载sqllite3.dll文件,真麻烦啊,可以从这里下载 http://www.sqlite.org/download.html 下载文件sqlitedll-3_5_8.zip,解压到ruby的bin目录,否则后面会报找不到sqlite3.dll文件的错误。

4、由于rails采用MVC的架构组织网页程序,因此可以运行script/generate来生成需要的文件,该脚本内置了controller, mailer, model, scaffold, web_service几种程序,这里我们需要的是controller,网上还可以找到其他的生成器插件,例如自动生成一个登录界面之类。
进入c:\ruby\projects\sample目录,运行ruby script/generate controller Welcome hello
类似下面的输出,这里Welcome指定Control名称,文件welcome_controller.rb中生成一个class WelcomeController,类似于java中的Action了,其中有一个方法hello
C:\ruby\project\sample>ruby script/generate controller Welcome hello
      exists  app
/controllers/
      exists  app
/helpers/
      create  app
/views/welcome
      exists  test
/functional/
      create  app
/controllers/welcome_controller.rb
      create  test
/functional/welcome_controller_test.rb
      create  app
/helpers/welcome_helper.rb
      create  app
/views/welcome/hello.html.erb
app\controllers\welcome_controller.rb文件加上下面的代码
1class WelcomeController < ApplicationController
2
3  def hello
4    @welcome_message = "Welcome to your first Rails application"
5  end
6end
7
app\views\welcome\hello.html.erb文件如下内容
 1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
 2<HTML>
 3 <HEAD>
 4  <TITLE> Hello world </TITLE>
 5 </HEAD>
 6
 7 <BODY>
 8<h1>Welcome#hello ,<%= @welcome_message %></h1>
 9<p>Find me in app/views/welcome/hello.html.erb</p>
10 </BODY>
11</HTML>
12
大功告成,启动web server,输入网址http://localhost:3000/welcome/hello就可以看到效果了。

posted @ 2008-04-23 13:23  在路上...  阅读(3732)  评论(0编辑  收藏  举报