快速业务通道

用Eclipse Europa进行Web开发,第3部分 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23
消 息,但是哪里出错仍不清楚。如果有一种方法可以获得错误的更多信息不是很好 么?我们可以添加一条日志记录语句,但是使用 RadRails,我们有一个更强大 的工具:调试。

用Eclipse Europa进行Web开发,第3部分(13)

时间:2010-11-29 IBM Michael Galpin

调试应用程序

要调试应用程序,只需添加一个断点并在调试模式下启动应用程序。应用程 序将在执行到 show 命令中的 gm 控制器时失败。那是我们将添加断点的位置。

图 35. 设置断点

使用服务器视图中的调试按钮来在调试模式下启动应用程序。

图 36. 在调试模式下启动服务器

当返回并单击 Show 链接时,将启动调试透视图。

图 37. Ruby 调试透视图

如果结合使用过 Eclipse 与 Java 技术,或者阅读过 第 1 部分 和 第 2 部分,这对您来说应当十分熟悉。这是用 Java 开发或 PHP 开发(使用 PDT) 所使用的同一个调试透视图。在本例中,我们将扩展 Variables 窗口中的 self 对象,如图 38 所示:

图 38. 在调试器中检查变量

用Eclipse Europa进行Web开发,第3部分(14)

时间:2010-11-29 IBM Michael Galpin

通常,params 变量将是一个散列,但是在本例中它为空。通常,该散列将包 含将要显示的球员的 ID。如果查看 views/gm/list.rhtml,可以看到 Show 链 接是怎样创建的。

清单 9. list.rhtml 中的代码片段

<tr>   <% for column in Player.content_columns %>    <td><%=h player.send(column.name) %></td>   <% end %>    <td><%= link_to ''Show'', :action => ''show'',      :id => player %></td>    <td><%= link_to ''Edit'', :action => ''edit'',      :id => player %></td>    <td><%= link_to ''Destroy'', { :action =>  ''destroy'',      :id => player }, :confirm => ''Are you  sure?'',      :method => :post %></td>   </tr>

通常,Show 链接的末尾有一个 ID。此 ID 来自 :id => player。问题是 Rails 如何计算这个表达式的值。它将把值计算为 player.id。但是,我们没有 id 列;而是 Id 列。因此需要显式使用此列,而不使用 Rails 的默认计算值。

清单 10. 修正 list.rhtml

<tr>   <% for column in Player.content_columns %>    <td><%=h player.send(column.name) %></td>   <% end %>    <td><%= link_to ''Show'', :action => ''show'',     :id => player.Id %></td>    <td><%= link_to ''Edit'', :action => ''edit'',     :id => player.Id %></td>    <td><%= link_to ''Destroy'', { :action =>  ''destroy'',     :id => player.Id }, :confirm => ''Are you  sure?'',     :method => :post %></td>   </tr>

我们可以重新装载 http://localhost:3000/gm,单击 Show(或者 Ediedit ,甚至 Destroy)链接,而且应当不会出现错误。

图 39. 显示球员

需要对 Show 页面和 Edit 页面做出类似更改,将 :id => player 更改为 :id => player.Id。这将使所有 scaffolding 都可以运行。 本教程的 源代码 包括这些更改。

结束语

本教程中探讨了使用 RadRails 为 Ruby on Rails 开发人员带来的好处。我 们了解到它只是在 Eclipse 之上安装的另一组插件。它为我们提供了一个优秀 的 Ruby 编辑器以及一组可与

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号