一,介绍
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的真正伟大之处,不过作为初学者,还是记录一下学习的路程.