一,介绍

Ruby on Rails 正在令整个 Web 开发领域受到震憾。让我们首先了解底层的技术:

  • Ruby 是一门免费的、简单的、直观的、可扩展的、可移植的、解释的脚本语言,用于快速而简单的面向对象编程。类似于 Perl,它支持处理文本文件和执行系统管理任务的很多特性。
  • Rails 是用 Ruby 编写的一款完整的、开放源代码的 Web 框架,目的是使用更简单而且更少的代码编写实际使用的应用程序。

作为一个完整的框架,这意味着 Rails 中的所有的层都是为协同工作而构造的,所以您不必自己再重复,可以完全只使用一门单一的语言。在 Rails 中,所有内容(从模板到控制流再到业务逻辑)都是用 Ruby 编写的。Rails 支持基于配置文件和注释的反射(reflection)和运行时扩展。

本文详细介绍了 Rails 的组成部分,并介绍了它的工作原理。


二,例子



1. 在ror下创建一个web项目,很简单,


ror已经为我们创建好了文件夹?是的,这些文件夹的名称已经是自解释的了,让我们简单看看

cmd> rails helloWorld 

   create 

   create  app/controllers 

   create  app/helpers 

   create  app/models 

   create  app/views/layouts 

   create  config/environments 

   .........


    app: 项目的工程文件目录


    config:配置文件目录


    script:脚本目录,如server脚本可以启动web服务.


    public: web的公共目录,包含images、css、js等目录


    其他还有log,lib,doc等.




2. 目录创建好了,需要写程序了?不,先让我看看生成的东东有什么用,


   使用命令启动web server(ruby自带的web server),


 

cmd> cd helloWorld 

 helloWorld> ruby script\server 

    Booting WEBrick... 

    Rails application started on http://0.0.0.0:3000 

    Ctrl-C to shutdown server; call with --help for options 

    [2014-08-03 20:48:47] INFO  WEBrick 1.3.1 

    [2014-08-03 20:48:47] INFO  ruby 1.8.6 (2007-03-13) [i386-mswin32] 

    [2014-08-03 20:48:47] INFO  WEBrick::HTTPServer#start: pid=2844 port=3000


 访问localhost:3000/,会出现ror的欢迎界面



3. 现在让我们来完成经典的hello world吧


cmd>ruby script/generate controller Say


    ror会在app目录下为我们生成相应的文件,查看app/controllers/say_controller.rb

。让我们看看这个文件的内容。


class 
  SayController  
 < 
  ApplicationController
    end



很小

SayController 是个空类,它继承了 ApplicationController ,所有它自动地获得了缺省“控制器”的所行为。为了让我们“控制器”处理请求,需要给它添加一些代码。

class 
  SayController  
 < 
  ApplicationController
    def hello
    end
 end



  接下来,我们需要创建视图

。缺省地, Rails 查看与它的“动作”具有同样名字的名字。在我们例子中,这意味着我们需要创建一个名为 app/views/say/hello.rhtml 的文件。 (.rhtml 是什么?我们稍后解释。 ) 现在,让我们看看 HTML 的内容。

  


< html > 
   < head > 
     < title > Hello, World !</ title > 
   </ head > 
   < body > 
      < h1 > Hello world !</ h1 > 
   </ body > 
</ html > 



保存

hello.rhtml 文件,然后刷新浏览器。你应该看到我们朋友问候的显示。注意我们不必须重启动应用程序来查看更新。在开发期间, Rails 自动地使用你修改的文件来运行应用程序。


总结:

  使用ror,只需要几条命令,几行代码就完成了简单的hello world,而且目录清晰,框架无配置,可见ror比起J2EE的开发速度.当然,这个例子太简单,无法体现ror的真正伟大之处,不过作为初学者,还是记录一下学习的路程.