< 返回 6.2 MVC版的组件V2.0.0 - E计划

在前面的章节,我们简单的了解了一下组件的安装,可以算是一个预热,这接下来的章节我们将正式按照Joomla的代码规范进行组件的代码开发。进入Joomla组件开发的v2.0.0时代

1,本节目标


安装v2.0.0版本,初步的了解一下v2.0.0版本的功能以及代码结构

2,组件的v2.0.0版本


[下载文件:]com_zmaxbookv2.0.0_2020-11-09_for_j3x.zip

3,安装组件


下载组件,然后将其安装在joomla上面(安装前先卸载之前的版本)。 安装之后,点击ZMAX图书管理组件进入组件,看到如下的截图:

现在我们的组件看起来和系统的其他组件很相像,感觉开始有点意思了。

4,组件干了什么


4.1 安装初始数据

为了便于讲解,我在安装的时候插入了一些演示数据。要实现这一点并不困难。在前面的章节中已经知道系统在安装的时候会执行我们指定的sql文件(即:install.mysql.utf8.sql),因此在这一版本中对其进行了改进,不单单在这个文件中创建了数据表还添加了初始数据。代码如下:

--
--	图书表
--	SINCE v1.0.3
--  DATE  2020-10-29
--
DROP TABLE IF EXISTS `#__zmaxbook_item`;
CREATE TABLE IF NOT EXISTS `#__zmaxbook_item` (
  `id` int(11) NOT NULL AUTO_INCREMENT,							/*记录的唯一ID*/
  `user_id` int(11) NOT NULL,									/*记录拥有者的ID*/
  `title` varchar(256) DEFAULT NULL,							/*书名*/
  `intro` text NOT NULL,										/*简介*/
  `author` varchar(256) NOT NULL,								/*作者*/
  `price` FLOAT NOT NULL DEFAULT '0',					        /*价格*/		
  `created` datetime NOT NULL,									/*创建的时间*/
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

--
-- 图书表中的演示数据 `#__zmaxbook_item`
--
INSERT INTO `#__zmaxbook_item` (`id`, `user_id`, `title`, `intro`, `author`, `price`, `created`) VALUES
(1, 0, 'Joomla建站教程', 'joomla0基础建站教程', '张敏', 19.99, '2020-11-07 00:00:00'),
(2, 0, 'Linux入门基础', '深入介绍linux服务器的开发基础', '张敏', 58.88, '2020-11-08 00:00:00'),
(3, 0, 'PHP入门指南', 'php入门宝典', '李华', 78.96, '2020-11-09 00:00:00');

4.2 从数据库读取数据并且展示 

在进入组件的时候,从数据库中将#__zmaxbook_item表中的数据读取出来,并且以列表的方法来展示。读取数据库的代码大概如下:

/**
 * 图书列表的管理模型类.
 *
 * @since  2.0
 */
class zmaxbookModelItems extends JModelList
{
	
	protected function getListQuery()
	{
		//STEP 1:得到数据库的链接对象
		$db = JFactory::getDBO(); 
		$query = $db->getQuery(true);
		$query->select("*")->from("#__zmaxbook_item");
		return $query;
	}
}

 

4.3 使用了典型的MVC架构来组织代码

现在进入组件的安装目录,可以看到目录结构如下:

models                  模型文件
views                   视图文件
sql                     安装SQL脚本文件
helpers                 帮助类
controller.php          主控制器文件
zmaxbook.php            入口点文件
zmaxbook.xml            清单文件  

整个组件的代码量不大,不到100行,大家可以自己点开每一个文件看看(特别是上面高亮的models,views,controller.php)这几个文件夹。在下一节我们将讲解Joomla组件的MVC执行流程,看看这个页面到底是如何生产的。

E计划

第11章:支持多语言
第12章:前台展示组件
第13章:组件开发FAQ
第14章:高级功能
第15章:使用分类
第16章:让组件支持插件
  • 内容提要
  • 留言讨论 (0)
  • 视频教程
在前面的章节,我们简单的了解了一下组件的安装,可以算是一个预热,这接下来的章节我们将正式按照Joomla的代码规范进行组件的代码开发。进入Joomla组件开发的v2.0.0时代

评论 (0)

  • 最新在前
  • 最佳在前

内容待完善

该课程提供视频版,可以观看完整的视频教程