2005-12-21
TAG:rails IDE edrails DataBase test

        之所以写这篇日志是因为在开始rails时浪费了大量的时间在调试环境上,因为很久前按照一个教程搭建过ROR工程,所以理所应当的感觉很简单,但相隔很长时间很多基础的概念都没有记住,所以犯了很低级的错误,要是动手前温习一下教程或者看看英文文档就不至于浪费时间了。

        看山给我介绍了redrails这个IDE,因为我在win上做有没有装eclipse,所以只下了单独运行的文件,还好是绿色软件,只要有java环境就可以了,在第一步建立工程时问题随之出现,首先是workspace,这个指定一个公共目录就好了,比如“railsCode”,以后每个项目都放在里面,IDE建立工程其实等价于命令行workspace目录下运行rails 工程名,建好后会产生所有rails需要的基本目录结构,包括script里面的server(注:经我测试在win下用redrails直接运行项目的server会经常出错,而且严重到直接关闭IDE抛出异常,再次启动时server里找不到启动项,不过用命令行找到workspace目录下运行ruby script\server可以启动,我在这里费了大劲,起初还以为是项目部署的问题~),访问127.0.0.1:3000会出现Congratulations页面,这个页面就是项目\public\index.html页面,数据库配置文件,也就是我们平时写脚本所谓的CONN是项目\config\database.yml文件,在这里设置mysql设置密码似乎还会出现问题~改写后要重启server,切记!

        最令我难堪的问题是项目访问路径,没看书我理所应当的按照127.0.0.1:3000\项目名访问,结果总是找不到路径(竟然为了这么一个问题熬到凌晨3点多,压根就没考虑查一下资料),其实是根本没有了解清rails的url机制,虽然现在不是了解得很全面,但知道以现在这种server的启动方式根本不存在虚拟目录的问题,也就是直接用127.0.0.1:3000访问的就是server所在项目的首页,而其他页面完全靠controller类来指定(controller类文件放在项目\app\controllers目录下),比如我新建test_controller.rb(用redrails时只要命名controller叫test即可,命令行需在项目下运行ruby script\generate controller test),这是项目中会同时产生四个文件app\controllers\test_controller.rb; app\helpers\test_helper.rb; app\view\test\; test\functional\test_controller_test.rb

此时访问127.0.0.1:3000\test会出现“

Unknown action

No action responded to index


查资料后修改test_controller.rb内容为“

class TestController < ApplicationController
 def index
  render_text"这是测试页"
 end
end

”后再次访问以上路径就会出现“这是测试页”的字样了,而定义其他url同理增加新的def就可以了,不过是否所有url都要这样来定义我还没有搞清?rails里model实现比较简单,单数对复数即model里定义test.rb则DB建tests表影射,然后在controller里的test_controller.rb加scaffold:test就ok了,最基础的list、show、edit、delete操作及表单在这之后自动生成127.0.0.1:3000\test\list

可以自己定义页面模版,比如想订制list页面的,就在test_controller.rb里加入

"def list...end”然后编辑view\test\list.rhtml即可,由于...内容与模版中动态程序的书写有关,有时间还需要进一步研究,大概就是数据库对象的声明一类。

PS:太晚了,随做随学随写吧






foodboox @ 01:04:46 | 引用 0 | 编辑



评论
 
wow gold (http://www.game4power.com) @ 2009-04-17 13:58:10
基础上作的,要是你用过ECLIPSE就会对workspace这些东西很熟悉了。不过话说回来~你要是用惯了redrails,估计开发JAVA的时候就该舍弃你的netbeans而转向ECLIPSE了。



 
农村娃 (http://四川) @ 2007-08-23 19:38:41
转载了哈

http://www.aiz8.cn/html/ROR/Rails/2007-8-23/rails-BiJi-DongShouJianXianKanShu.html



 
neate () @ 2007-08-14 13:31:32
最近一直在读agile web development with rails的翻译



我也是现做现学,大家有问题一起讨论啊



http://my4java.itpub.net/category/9983/23097



 
hansonyan () @ 2006-03-05 15:07:01
可以先去看看这篇

http://www.onlamp.com/lpt/a/5546



 
todayhill () @ 2005-12-21 23:58:54
其实redrails就是在ECLIPSE的基础上作的,要是你用过ECLIPSE就会对workspace这些东西很熟悉了。不过话说回来~你要是用惯了redrails,估计开发JAVA的时候就该舍弃你的netbeans而转向ECLIPSE了。



发表评论
 姓名: 
 E-mail: 
 地址: