主頁 > 論壇 > 设计与开发 >

如何使用module?

You need to be logged in to get access to the forums. You can do so here

作者 訊息

橡 树

橡 树

2007年 八月 17日(星期五) 9:12:55 am

按照例子做了一个简单的module,可以通过这样的地址访问: http://www.my_domain.com/index.php?/chi/my_module/my_view 我想知道module只能这样使用吗?还有别的应用方法吗? 谢谢!

陈 明星

2007年 八月 20日(星期一) 4:38:53 am

橡树想要什么样的应用呢?举个例子,我们一起考虑,因为我做的module也是如你一般.

橡 树

橡 树

2007年 八月 23日(星期四) 6:12:21 am

我对eZ了解不多,想到的东西可能与eZ脱钩,所以表达出来的你很难理解,等我再学习一段时间,有了更清晰的想法再和你讨论 : )

Michael Lee

ZerusTech - Michael Lee

2007年 八月 27日(星期一) 5:45:52 am

要理解module,首先应该理解eZ publish的URI结构: eZ publish中所有的URI都是基于这样一种结构: <module>/<view>/<parameter> 其中: <module>部分是“模块”的名字,<view>部分是“视图”的名称,<parameter>部分是“参数”列表(包括ordered与unordered参数,unordered参数需要有参数名)。对于module的调用可以使用GET或POST方法。另外,对于GET方法,URI中可以包含querystring。 而<view>部分则告诉eZ publish需要调用<module>的哪一个“视图”。eZ publish的“view”这个术语很容易使初学者感到困惑,因为会被误认为“view”就是模板或者页面。其实可以这样理解,eZ publish的"view"类似于一个函数,只不过这种函数可以通过URI调用,并且最终一定会返回一个段页面的内容。module的view的入口是在module.php中定义的。 除了"view"以外,module还可以包括function(函数)和operation(操作)。 简单的区分如下: function是不能通过URI调用的,相反你可以在模板中通过fetch ( '<module>', '<function>', '<parameter'> )来调用。其实很多时候,你会发现同一个功能,你即需要为它定义一个“view"入口,也需要为其定义一个"function"入口。"view" 入口是为了可以使用URI调用一个功能,而"function"入口是为了可以在代码中使用fetch()函数来调用一个功能。function在function_definition.php中定义入口。 而operation(操作)则相对更加复杂一些,operation主要用于定义复杂的操作过程。一个operation可以包含多个步骤,每个步骤会调用一个模块中的函数。另外,在每个步骤执行之前,之后都为workflow(工作流)留出了触发器入口。这样,如果必要,你可以在每个步骤之前,之后插入自己的处理。operation在operation_definition.php中定义入口。要触发一个operation,需要使用eZOperationHandler::execute()函数。 总结一下: module的URI - <module>/<view>/<parameter> module的主要构成: view (视图)- 通过URI触发,在module.php中定义入口 function (函数)- 通过fetch()函数触发,在function_definition.php中定义入口 operation (操作)- 通过eZOperationHandler::execute()触发,在operation_definition.php中定义入口 对module的理解:基本上eZ publish的module框架可以用来开发任何功能。除了view, function与operation这些eZ publish的概念外,你仍然可以使用你所熟悉的HTTP对象。比如:request, response, session等等。对于这些HTTP协议层的对象,eZ publish都有很好的封装。 最后,建议多看看eZ publish的文档。

上海众森计算机科技有限公司|ZerusTech Ltd eZ publish中国首个银牌合作伙伴 自2005年开始eZ publish开发 http://www.zerustech.com Michael Lee | Managing Director | michael.lee@zerustech.com | Skype: zerustech

橡 树

橡 树

2007年 九月 06日(星期四) 3:21:21 am

你好,Michael 感谢你这么详细的回复,一定花费了不少宝贵的时间。 看了以后我觉得我对许多概念还很不清楚,以后尽量多看eZ publish文档。我尝试着写module,有问题及时向你和明星请教。 再次感谢!