在Joomla,我应该把我的课程计算在哪里?

问题描述:

我正在研究一个包含构建时间表的joomla组件。在任何一天,它需要查看一组规则(每周的星期几,一年的日期,事件类型)并返回所有可能的开始时间。有一个计算这些事情的类是有意义的,但我不确定它适合模型或控制器(当然不是视图)类别。我应该创建一个com_myproject/lib(或类似的名称),并让joomla自动加载类?在Joomla,我应该把我的课程计算在哪里?

我是joomla的新手,从http://docs.joomla.org/Building_Joomla_Extensions_with_Apache_Ant提供的框架/项目开始。

您应该创建一个辅助类。举个例子,看看here,虽然它是用于模块的,但是同样的概念适用。

你可能想从Developing a Model-View-Controller Component - Part 1教程开始,并通过手工操作。使用Apache Ant来了解如何编写扩展程序就像拿一部佳能在桶中拍摄鱼一样。它可以完成,但可能不是最好的做法。

Joomla! MVC模式非常奇特且难以理解。我自己也不太明白。我在开发人员的电子邮件列表上被告知了解其他组件的组装方式。你猜怎么了?所有其他开发人员都以不同的方式进行,其中一些较大的组件看起来像组织中的意大利面条代码。

你的组件代码的大部分应该在控制器中,或者作为控制器类的一部分,或者是一个单独的导入的类文件。除非你正在处理大的组件,否则不需要单独的库目录与多个类文件。此Joomla! thread可能适用。

+0

我已经完成了该教程的所有6个部分,但没有一个清楚说明哪些类不直接是个人模型,视图或控制器。 – 2010-10-22 16:28:37

+0

“使用Apache Ant来学习如何编写扩展名就像拿一部佳能在桶中拍摄鱼”我完全不同意这一点。对于我来说,尝试在一个文件夹中编写,压缩,安装并重复该过程是完全浪费时间。使用Ant我创建我的源代码目录,打包并安装,然后我只更新joomla目录中的代码。 Ant会将这些文件恢复到我的源代码中,这样我就可以在我准备好可以使用的东西时重建和安装。 – 2010-10-22 16:32:19

+0

我想我是老派。我刚刚从文本编辑器切换到IDE和SVN。 :)从我的角度来看,ANT是大炮,因为它增加了一层我还不习惯的复杂性。感谢您解释它。 – 2010-10-22 18:01:25