Rails
的开发实例
一.
任务对B
ook表
的数据进行
操作,完成书籍管理模块。
二.
开发操作流程
(1).选择Rails的工程目录(如:D:/railsDoc),在DOS下键入命令:rails Book 建立Book的Rails工程。如下图:
稍候片刻Rails框架将为你自动生成Book工程目录:
说明:app/controller目录存放控制器类,app/model目录存放模型类(业务和持久),app/views目录存放视图
(2).建立Book控制器类, 进入D:/railsDoc/Book目录, 在DOS下键入命令:ruby script/generate controller book 如下图:
(3)在MySQL数据库中建立名为book_development的数据库。修改config/database.yml文件。修改数据库的名称、用户名、密码和host。我的修改文件如下:
你可以依据自己的数据库配置修改。
(4)建立模型类BookInfo(与Book数据库中的book_info表对应),进入D:/railsDoc/Book目录, 在DOS下键入命令:ruby script/generate model book_info。如下图:
说明:001_create_book_infos.rb是数据库迁移文件。可以在此文件中添加表的字段,然后执行:rake db:migrate。将创建book_infos表。也可以自己创建数据库迁移文件完成对数据库的DDL操作(如:添加字段等)
在db/migrate/001_create_book_infos.rb中完成如下修改:
添加了title、description、price三个字段。执行:rake db:migrate命令。如下图:
执行成功!! Book数据库中已有了book_infos表了。如下图:
好神奇呀!!!!!!!!!!!!!!!!!!!!!!!!!!!
神奇的还在后头呢!!!!!!!!!!!
(5).在BookController类中(app/controllers/book_controller . rb中)添加scaffold :book_info。如下图:
scaffold :XXX摸司东东?????????
先看看更神奇的东西!!!!!!
现在让我们启动WEBrick服务器(Rails框架自带的),在DOS下键入命令:ruby script/server。如下图:
默认的端口号为:3000。可以自行修改。
好!!我们现在打开IE浏览器在地址栏中输入:http://localhost:3000/book。效果如下:
只是显示所有图书信息的页面(list.rhtml)。当然还有编辑(edit.rhtml)、显示(show.rhtml)和添加(new.rhtml)页面。如下图:
现在说说scaffold :book_info它将告诉Ralis框架根据BookController和BookInfo自动生成动态脚手架。此时,我们在BookController控制器中将发现new、edit、show和list方法。他们实际上就是action。那对应的视图呢??在app/views/book中可惜是空的。我在DOS下输入命令:ruby script/generate scaffold book book_info 如下图:
在app/views/book/将生成_form . rhtml(局部模版)、list . rhtml、new . rhtml、edit . rhtml和show . rhtml视图文件。他们与BookController中的CUDN方法一一对应。
app/views/layout/book . rhtml是布局模版。可自行修改。
(6).到现在我完成了一个简单的书籍管理的模块了。可页面太难看了,我们可以自行修改:book . rhtml,同时添加自己的CSS样式文件。
补充:在BookInfo模型类可以添加数据验证:
效果图如下: