要创建一个新的 Rails 应用程序,先要按照以下步骤创建一个新的 Rails 项目:
使用 rails 命令行应用程序创建一个新项目(将自动创建新目录)。
C:\>railscomics_catalog |
更改目录,进入前一步创建的新项目目录。
C:\>cdcomics_catalogC:\comics_catalog> |
在您的项目目录中,有一个 config 目录,其中有一个 database.yml 文件。您需要使用文本编辑器来对 database.yml 文件进行编辑。该文件的原始内容如下:
development:adapter:mysqldatabase: |
不同的数据库需要使用不同的连接属性。Rails 的默认设置适用于 MySQL,但您要重新配置该项目以使用 Oracle。按照下列步骤更改 development 属性。(您也可以更改 test 和 production 属性,但本文不讨论这些内容)
development:adapter:ociusernameruby口令):rubyhost:RAILS |
使用 Rails 创建 Web 应用程序的方法有多种,但到目前为止最为简单的方法是使用 Rails 1.0.0 中新增的一个命令行功能,使用它可以一次构建整个应用程序。
C:\comics_catalog>rubyscript/generatescaffoldComic |
除了在命令行窗口中连续出现的输出外,还发生了什么呢?Rails 代码生成器创建了模型、视图和控制器 Ruby 代码来访问 COMICS 表。在本例中您使用 Rails 的 scaffold 来创建应用程序,它将为您完成所有的工作。如果更改了数据库表,您需要重新运行 scaffold 命令。否则您的应用程序将无法工作。
现在您已经生成了 web 应用程序,接下来就是启动 Ruby Web 服务器 — WEBRick。
C:\comics_catalog>rubyscript/server |
您可以在任何时候更改您应用程序的 Ruby 代码或 COMICS 表而无需重启 web 服务器。但是,如果您更改了数据库配置文件(如 database.yml),则需要重启服务器。
现在您可以使用 Web 浏览器来访问位于您开发计算机中的 Rails Comic Catalog 应用程序。使用如下 URL:
http://localhost:3000/comics/list
浏览器应该显示一个您的目录中包含的漫画书列表,如图 1 所示。
图 1:产品目录表
当您使用 scaffold 创建 Rails Web 应用程序时,它会自动创建三个 Web 组件,您可以使用这些组件来查看一个含目标数据库表所有记录的列表,以及插入、更改和删除该表中的记录。图 1 中显示了一个列表,其中包含了您在本教程开始时执行 SQL 脚本而向数据库中插入的所有示例数据。
除了列表视图外,本程序还提供详情视图。点击任一“Show” 链接您就可以查看详情页,其中专门显示某一记录的数据。图 2 即是这种页面的一个示例。
图 2:详情页
您还可以编辑数据库表中的任一记录。单击“Back”链接,或使用浏览器的回退按钮返回列表视图页,然后点击任一记录的“Edit”链接。图 3 显示了 COMICS 数据库表中记录之一的编辑视图示例。
图 3:编辑视图
您也可以向 COMICS 表中添加新记录,先返回列表视图,单击“New Comic”链接。然后您将看到一个插入视图,它类似于图 3,只是所有域都是空白的。
精通 Rails
Product Catalog 示例展示了使用 Rails 可以很方便地创建一个极其简单的表,但是这个表除用于跟踪库存外在其它方面并没有很大的用处。您可以使用 Rails 创建复杂得多的 Web 应用程序,但这需要您花费一定的精力来研究和揣摩代码。Rails 是一个易用的框架,但像任何技术一样,要精通它还需一定的时间。这里,我只建议正进行全新应用程序开发,通晓技术的人员和开发团队使用 Rails。对于在此之外的,建议您等其成熟后再使用。
要真正精通 Rails,建议您阅读一本书,虽然今年稍后会有一系列书涌现,但目前市面上现有的一本优秀著作是 Agile Web Programming with Ruby on Rails ,该书由 David Heninmier Hanson 和 Dave Thomas 合著完成,由 Pragmatic Bookshelf 在 2005 年出版。Hanson,众所周知,是 Rails 之父,而 Thomas 则参与了 Programming Ruby:The Pragmatic Programmers' Guide(Pragmatic Bookshelf,第 2 版,2004)一书的编撰。
(责任编辑:铭铭 mingming_ky@126.com TEL:(010)68476606)| 共2页: 上一页 [1] 2 | ||
|
|
|||
| · CISSP认证成长之路 · 51CTO主编推荐经典专题 · 51CTO国庆充电专题之好.. · 网络技术经典基础教程 · AMD Phenom三核处理器.. · 国际文档格式标准开战 · 2007年互联网大会 · 我是黑客我怕谁——讲.. |
· ARP攻击防范与解决方案 · Solaris 10 配置管理 · Solaris基础知识入门 · RIP路由协议专栏 · MPLS路由协议专栏 · OSPF路由协议专栏 · 思科路由器产品 · 华为路由器产品 |
||
|
|||
| · Java基础教程 · VPN技术 · ARP攻击防范与解决方案 · SQL Server 2005全解 · SOA 面向服务架构 · SQL Server 2005全解 · Java编程开发手册 · 三层交换技术专题 |
· SQL Server入门到精通 · Windows Server 2003企.. · Windows远程桌面应用 · C#技术开发指南 · VPN技术 · Solaris 10 配置管理 · C#技术开发指南 · Windows操作系统安装 |
||
|
|||
| · ARP攻击防范与解决方案 · VPN技术 · SQL Server 2005全解 · Java基础教程 · SQL Server入门到精通 · SQL Server 2005全解 · SOA 面向服务架构 · Java编程开发手册 |
· C#技术开发指南 · 三层交换技术专题 · C#技术开发指南 · Windows远程桌面应用 · Windows Server 2003企.. · 邮件服务器专题 · wimax技术与趋势 · Windows操作系统安装 |
||
| ·DB2 Viper快速入门 ·DB2 9数据库的镜像分割与.. |
·将XML应用程序从DB2 8.x.. ·DB2 9中的pureXML:如何.. |
| ·服务器中的“傻瓜机”在.. ·盖茨也喜欢登录Youtube看.. |
· · |
| ·拯救系统管理员 ·美国选民:我为什么选布什 |
·VMware公司中文命名挑战赛 ·我们真缺乏创新吗? |
| ·J0ker的CISSP之路:复习-.. ·J0ker的CISSP之路:复习-I.. |
·9月第3周安全回顾 内网安.. ·教你几招识别和防御Web网.. |
| · NGN:下一代网络 · 网络访问中断大排查 · FTTx光纤接入 |
· 教你使用Anti ARP Sniff.. · 网络嗅探教程:使用Snif.. · 常见病毒手工清除方法大.. |
| · C++是垃圾语言?! · 2007年IT界七大抄袭事件 · Java实用开发全集 |
· 解析Ajax开发框架 走进A.. · 基于Google Maps与Ajax.. · 基于Google Maps与Ajax.. |
| · 热门 IT 培训认证官方资.. · Ubuntu 中文开源频道 · Solaris基础知识入门 |
· 费力不讨好 数据中心主.. · AMD Phenom三核处理器解.. · 51CTO主编推荐经典专题 |
| · 甲骨文Oracle 11g正式发.. · Oracle数据库开发之PL/S.. · Oracle数据库开发基础教.. |
· 存储2006,一个并购的大.. · IDC宣布浪潮蝉联存储市.. · 双机热备技术 |