第一次ROR之旅

第一次ROR之旅
1、创建一个rails目录
rails mybook
2、,进入 mybook 目录。运行 ruby script\server
这条命令是运行 script 目录下的 server 命令来启动 webrick 服务器
3、打开浏览器 ,输入网址http://127.0.0.1:3000/
如果不出以外应该可以看到一个ROR的页面
4、编辑 controller 类
打开新的 DOS 命令行,运行 ruby script\generate controller MyTest
c:\ruby\work\mybook\app\controllers 目录中将生成一个包含 MyTestController 类定义骨架的名为 my_test_controller.rb 的文件 c:\ruby\work为我的工作路径
鼠标右键点击此文件,选择”edit” 打开编辑此文件
class MyTestController < ApplicationController
def index
render_text "Hello world"
end
end

在浏览器中访问 http://127.0.0.1:3000/My_Test/,
这下好了,错误来了

错误一:MissingSourceFile in My testController#index
出现原因:心版本的rails,默认是和sqlite3绑定的,当然需要装sqlite3了,在命令行中输入:gem install sqlite3-ruby进行安装
还以为这样就万事大吉了,重新启动 webrick 服务器,刷新http://127.0.0.1:3000/My_Test/ 错误以一种新的面孔出现了

错误二:This error occurred while loading the following files:
sqlite3/driver/dl/driver
sqlite3/driver/dl/api
原因:缺少 sqlite3
解决:将下载的sqlite3.dll和sqlite3.exe拷贝到ruby\bin目录下,使用命令ruby script/server重启WEBrick,刷新http://127.0.0.1:3000/My_Test/
sqlite3.dll和sqlite3.exe下载地址:http://www.sqlite.org/download.html
再次以为这样就行了,错误在继续中……

错误三:NoMethodError in My testController#index
undefined method `render_text' for #<MyTestController:0x37c8d48>
RAILS_ROOT: C:/ruby/work/mybook
app/controllers/my_test_controller.rb:3:in `index'
原因:rails版本支持的问题
解决:
将class MyTestController < ApplicationController
def index
[color=red]render_text [/color]"Hello world"
end
end
修改为:class MyTestController < ApplicationController
def index
[color=red]render:text=> [/color] "Hello world"
end
end
需要修改的部分为红色显示的字体,不知道为什么rails的版本支持会出现这种问题……纳闷中……

不过到此为止,终于可以开始ROR之旅了……
心里那个high啊……继续玩转ROR去……


ps:关于rails 是如何将 url 和控制器中的函数做简单映射的一些解释,在运行 ruby script\generate controller MyTest 的时候, rails 做了一些默认的假设。 MyTest 对应的 controller 文件是 my_test_controller.rb, 文件中控制器类名是 MyTestController,而 url 映射是 /My_Test/ .
这些默认规定的好处是:我们不再需要编辑复杂的配置文件,只要对相应的文件做编辑就可以了。我们只需要关注程序逻辑,而不是其它什么,这就是 rails 设计原则中的“习惯约定优于配置”。
另外也有一点 ruby 动态语言的好处,这点是 java 所无法办到的。在编辑完 controller 后,重新刷新页面,就可以使程序生效。对于编译型的 java 语言来说,不重新编译,重新启动服务器是无法做到这点的。Rails 开发的易用性可见一斑了…………
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值