转: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 文件加上下面的代码
1 class  WelcomeController  <  ApplicationController
2
3    def  hello
4     @welcome_message  =   "Welcome to your first Rails application "
5   end
6 end
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 就可以看到效果了。

你可能感兴趣的:(C++,c,C#,Ruby,Rails)