快速业务通道

使用Agavi进行MVC编程简介,第2部分 (二)

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-22

使用Agavi进行MVC编程简介,第2部分:使用Agavi和Doctrine添加表单和数据库支持2

获取数据库记录

现在,Agavi、Doctrine和MySQL之间的通信已经畅通,接下来需要编写一个ViewAction,以从MySQL数据库获取并显示汽车列表。首先,使用一些示例记录填充 listing 表;这方便您在操作的初始开发阶段对其进行测试:

mysql> INSERT INTO listing (RecordID, RecordDate, OwnerName, OwnerTel,
   OwnerEmail, VehicleManufacturerID, VehicleModel, VehicleYear, VehicleColor,
   VehicleMileage, VehicleIsFirstOwned, VehicleAccessoryBit, VehicleIsCertified,
   VehicleCertificationDate, VehicleSalePriceMin, VehicleSalePriceMax,
   VehicleSalePriceIsNegotiable, Note, OwnerCity, OwnerCountryID, DisplayStatus,
   DisplayUntilDate) VALUES (1, ''2009-06-08'', ''John Doe'', ''00123456789876'',
   ''john@wasp.example.com'', 2, ''Boxster'', 2005, ''Yellow'', 15457, 1, 23, 1,
   ''2008-01-01'', 35000, 40000, 1, ''Well cared for. In good shape, no scratches
   or bumps. Has prepaid annual service contract till 2009.'', ''London'', 2,
   1, ''2009-10-15'');
Query OK, 1 row affected (0.05 sec)

mysql> INSERT INTO listing (RecordID, RecordDate, OwnerName, OwnerTel,
   OwnerEmail, VehicleManufacturerID, VehicleModel, VehicleYear, VehicleColor,
   VehicleMileage, VehicleIsFirstOwned, VehicleAccessoryBit, VehicleIsCertified,
   VehicleCertificationDate, VehicleSalePriceMin, VehicleSalePriceMax,
   VehicleSalePriceIsNegotiable, Note, OwnerCity, OwnerCountryID, DisplayStatus,
   DisplayUntilDate) VALUES (2, ''2009-06-08'', ''Jane Doe'', ''00987654321236'',
   ''jane@wasp.example.com'', 2, ''911 Turbo'', 2003, ''Black'', 17890, 1, 23, 1,
   ''2008-06-19'', 17000, 25000, 1, '''', ''Cambridge'', 2, 1, ''2009-10-15'');
Query OK, 1 row affected (0.00 sec)

现在,通过以下步骤给 WASP 应用程序添加必要的功能:

步骤 1:创建占位符类

汽车列表可以看作是WASP 应用程序的一个功能独立的组件,因此与这个组件相关的操作和视图应该放在另一个独立的模块中。启动 Agavi 构建脚本并创建一个新的模型,如下所示:

shell> agavi module-create
...
Module name: Listing

完成之后,添加一个新的 DisplayAction 来处理列表的显示。为了将操作与 DisplayErrorView和DisplaySuccessView视图连接起来,那么需要在得到提示时提供下列值:

shell> agavi action-wizard
...
Module name: Listing
Action name: Display 
Space-separated list of views to create for Display [Success]: Error Success

现在,Agavi 将生成必要的类文件并将它们放到正确的位置中。

步骤 2:定义路由

添加一个引用最新创建的操作的路由,如 清单 15所示:

清单 15. Listing/DisplayAction 路由定义

<?xml version="1.0" encoding="UTF-8"?>
<ae:configurations xmlns:ae="http://agavi.org/agavi/config/global/envelope/1.0"
 xmlns="http://agavi.org/agavi/config/parts/routing/1.0">
 <ae:configuration>
  <routes>
   ...
   <!-- action for listing pages "/

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号