首页 > 程序开发 > Zend Framework 1.8 中的Model

Zend Framework 1.8 中的Model

2009年8月1日

在ZF1.8以后Module的问题得以完善,但是仍然有很多领域需要改进,Model就是其中一个

Model的类型用DbTable<->Mapper<->Model的DataMapper Pattern (同时参照IdentityMapUnitOfWork)来调用,其中对象Model用于导入对象,导入后就由UOW拥有的Identity对象来跟踪,以此来保持数据的同步。比如一个Users表,我们有如下类:

Model_User是业务域模型(domain Model),关于domain design的模式可以参见domain driven design一书

Model_UserMapper来完成Model对象和数据库的映射关系

Model_DbTable_Users extends Zend_Db_Table_Abstract类负责数据库方面的设定

以上pattern的使用在这篇帖子Zend 的proposal中有讨论到。这个Pattern的好处是,如果你将来不用数据库来保存数据,而换用文件或者Memcached,那么你就不用修改你的Controller了;从来引来的一个缺点是几乎每个调用都需要来定义Mapper,从而导致复杂度提高。通常情况下对于不是比较复杂的情况,1:1的应用来说,Table Gatewy, Row, Rowset的Pattern已经足够使用。

关于DataMapper的Model使用模型还在更新过程中,同时还有个datashuffler在ZF上的实现目前也在研究中。

VN:F [1.9.22_1171]
Rating: 8.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
1.8 中的Model, 8.0 out of 10 based on 1 rating

程序开发

  1. 西波
    | #1

    总结得太好了!感谢。

    VA:F [1.9.22_1171]
    Rating: 0.0/5 (0 votes cast)
    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)
  1. 本文目前尚无任何 trackbacks 和 pingbacks.

This blog is kept spam free by WP-SpamFree.