# 应用模块

# 目录结构

以本项目/app/目录下的demo应用,作为thinkphp6多应用 (opens new window)模式的演示

├── controller                  # 控制器目录
├── model                       # 模型目录
├── view                        # 视图目录
├── common.php                  # 模块内公共文件
├── db_install.php              # 模块安装sql执行文件
├── db_uninstall.php            # 模块卸载sql执行文件
├── db_upgrade.php              # 模块升级sql执行文件
├── event.php                   # event     配置
├── icon.jpg                    # 模块图标   配置
├── manifest.xml                # 模块信息   配置
└── middleware.php              # middleware

# manifest.xml

通过manifest.xml文件配置模块基本信息

  1. identity标识唯一模块
  2. version标识模块的版本,模块升级,需要同步设置version参数
<?xml version="1.0" encoding="utf-8"?>
<manifest versionCode="">
	<application><!-- 应用基础配置-->
		<identity>demo</identity><!-- 应用标识与文件夹名称一致 -->
		<name>demo应用名称</name><!-- 应用名称-->
		<version>1.0.0</version><!-- 应用版本 -->
		<description>我的demo应用描述</description><!-- 简短的应用描述 -->
		<author>author</author><!-- 作者 -->

		<icon>icon.jpg</icon><!-- 应用目录下的图标名称,默认icon.jpg -->


		<!-- 【留空】默认点击应用进入模块菜单页-->
		<!-- 【自定义】配置管理后台入口路径后,将直接跳转到管理后台(无菜单页)<admin>/demo/admin/index</admin> -->
		<admin></admin>


	</application>


	<platform>

		<supports><!-- 支持的平台类型-->
				<item type="1" /><!-- 微信公众号-->
				<item type="2" /><!-- 微信小程序-->
				<item type="3" /><!-- 字节跳动小程序-->
				<item type="4" /><!-- PC网站-->
				<item type="5" /><!-- APP应用-->
				<item type="6" /><!-- 支付宝小程序-->
				<item type="7" /><!-- 百度小程序-->
		</supports>

	</platform>


	<bindings>

		<cover><!-- 前端入口地址,不带域名-->
			<entry title="首页" url="/demo/index/index"/>
			<entry title="用户页" url="/demo/user/index"/>
			<entry title="订单页" url="/demo/order/index"/>
		</cover>

		<menu><!-- 管理后台菜单地址,不带域名-->
			<entry title="后台菜单1" url="/demo/admin/index" />
			<entry title="后台菜单2" url="/demo/admin/user" />
			<entry title="后台菜单3" url="/demo/admin/msg" />
			<entry title="后台菜单4" url="/demo/admin/test" />
			<entry title="后台菜单5" url="/demo/admin/sun" />
		</menu>

	</bindings>


    <install>db_install.php</install><!-- 数据库安装文件-->
	<uninstall>db_uninstall.php</uninstall><!-- 数据库卸载文件-->
	<upgrade>db_upgrade.php</upgrade><!-- 数据库升级文件-->

</manifest>

# 数据库命名

  1. 数据库前缀是sun_,请勿修改
  2. 新建模块数据表格时,请加上sun_前缀,比如demo模块user表格,可以命名为:sun_demo_user
  3. 系统数据库以sun_core_作为前缀,请勿删除,同时避免以sun_core_作为前缀命名模块表格

# /app/目录

/app/目录下创建的模块,完全支持thinkphp6多应用 (opens new window)开发模式,直接参考开发文档既可!

# /addons/目录

/addons/目录下创建的模块,不支持thinkphp6多应用 (opens new window)开发模式,但是作为兼容性功能,支持运行微擎2.0模块。

# 两者区别

  1. 新应用开发建议使用thinkphp6多应用 (opens new window)开发模式
  2. /addons/目录下的模块,仅作为兼容运行,不推荐新应用采用这种开发模式!