今天学习了一下ROR,有一些学习经验东西要与大家分享。
给ROR加一个座右铭--------狭窄心肠的日本产物。
首先,不要一个一个的下载Ruby,Rails,建议使用一键安装,下载地址如下:
InstantRails-1.3-win
版本说明:ruby 1.8.4 (2005-12-24) [i386-mswin32]
其次,下载一个目前为止比较好的一个ROR的实践工具:RadRails
下载地址:radrails-0.7.1-win32
接下来,设置一下Radrails的环境
1)、Windows/perferences/Ruby/Installed Inteperters/ ->add ruby所在路径:比如D:\InstantRails\ruby\bin\ruby.exe
2)、Windows/perferences/Rails/Configuration ->Rails path:比如D:\InstantRails\ruby\bin\rails
->Rake path:比如D:\InstantRails\ruby\bin\rake 绝不是bat/cmd
->mogrel path:比如D:\InstantRails\ruby\bin\mongrel_rails绝不是bat/cmd
有了如上的配置后,就只需要和在JAVA当中ANT一样使用。(成功用过APPFUSE的人就不用害怕了)
看看日本人写的第一步:
1),在RadRails中创建一个Rails Project,怎么样会出来一堆的东东。
2),进入DOS命令吧,后面的工序都是这样的,好象买了海尔的洗衣机,第一次是送货、第二次是用户回访,第三次是.....
进入到你的项目处,运行ruby script\generate controller MyTest,
则得到的服务如下:
exists app/controllers/
exists app/helpers/
create app/views/my_test
exists test/functional/
create app/controllers/my_test_controller.rb
create test/functional/my_test_controller_test.rb
create app/helpers/my_test_helper.rb
修改一下my_test_controller.rb
代码
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>-->
class
MyTestController
<
ApplicationController
def index
render_text
"
Hello world!!
"
end
end
在浏览器里输入:http://127.0.0.1:3000/my_test/
会出现 Hello world!!字样,
不过有意思的是你可以输入:http://127.0.0.1:3000/My_test/
http://127.0.0.1:3000/My_Test/
http://127.0.0.1:3000/my_Test/
都可以得到这个值,可能没有JAVA哪样严格吧。
3)、还有对数据库的操作,要配置一个database.yml(好象Log4j的东东)
4)、创建数据库表的时候只能够使用复数起名,比如User就不行,只能够起Users
下面只要执行几个命令就可以使用增删改查了。
如下是我的操作,下班了,就不多写了,例子能够说明一切问题:
代码
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>-->
1
E:\RORProject\demo
>
ruby script
/
generate model user
2
3
exists app
/
models
/
4
5
exists test
/
unit
/
6
7
exists test
/
fixtures
/
8
9
create app
/
models
/
user.rb
10
11
create test
/
unit
/
user_test.rb
12
13
create test
/
fixtures
/
users.yml
14
15
exists db
/
migrate
16
17
create db
/
migrate
/
001_create_users.rb
18
19
E:\RORProject\demo
>
ruby script
/
generate controller user
20
exists app
/
controllers
/
21
exists app
/
helpers
/
22
create app
/
views
/
user
23
exists test
/
functional
/
24
create app
/
controllers
/
user_controller.rb
25
create test
/
functional
/
user_controller_test.rb
26
create app
/
helpers
/
user_helper.rb
27
修改user_controller.rb如下:
代码
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>-->
1
class
UserController
<
ApplicationController
2
scaffold:user
3
end
最后你的浏览器当中输入:http://127.0.0.1:3000/user/list,就包括了对数据库表的四个操作.当然你也可以自己定义四个操作的任意一种.
最后总结:
ROR可能是敏捷开发的一个好实践,但是我觉得他完成复杂应用进不会有大做为,而至于这一点还需要再做探究。不过现阶段最好的需求就是能够给用户快速的写出一个不完整的DEMO,这一点为以后打单取得主动。