lacodda / bxframe
CMS Bitrix上构建模块、组件和cli的API
0.0.8
2016-12-09 08:20 UTC
Requires
- php: >=5.4
- nesbot/carbon: *
- symfony/console: *
- symfony/filesystem: *
This package is not auto-updated.
Last update: 2024-09-23 15:30:51 UTC
README
Bitrix模块
在Bitrix中构建自定义管理后台的API
模块的文档可以在http://api.digitalwand.ru/admin_helper/找到。也可以在模块代码中的注释中阅读。
简单的示例实现了一个独立的模块lacodda.bxmodule-demo
概念
本模块实现了MVC方法以创建管理界面。
由于存在用于CRUD操作的统一API,因此只有实现Bitrix ORM API的类才能使用本模块构建管理界面。如果希望使用本模块为不使用Bitrix ORM的实体,可以为此类准备一个实现所需功能的类包装器。
模块的基本概念
- 模型:MVC术语中的“model”。继承自DataManager或实现类似API的类。
- 助手:MVC术语中的“view”。实现列表或详细页面界面绘制的类。
- 路由器:MVC术语中的“controller”。接收该模块管理后台的所有请求的文件,创建具有所需设置的相应助手。无需直接与其交互。
- 小部件:MVC术语中的“delegate”。负责绘制实体单独字段控制元素的类。在列表和详细页面上。
与模块交互的方案如下
- 实现AdminListHelper类以管理元素列表页面
- 实现AdminEditHelper类以管理元素查看/编辑页面
- 创建Interface.php文件并调用AdminBaseHelper::setInterfaceSettings(),其中包含管理后台字段配置和用于构建它的类。
- 如果模块附带的小部件功能不够用,可以实现自己的小部件,可以继承任何其他现成小部件或从抽象类HelperWidget继承。
推荐用于使用该功能的模块的文件结构
- 目录admin。只需将menu.php放入其中,无需创建列表和详细页面的单独文件,因为具有统一的路由。
- 目录classes(或lib):包含模型、视图和代理的类。
- -- classes/helper:包含继承自AdminListHelper和AdminEditHelper的“view”类。
- -- classes/widget:包含小部件(“delegate”),如果为模块创建了小部件。
- -- classes/model:包含模型,如果需要重定义getList等标准函数的行为。
不一定需要使用该结构,这只是基于模块在一些项目中成功应用的经验的建议。
Bitrix控制台
Bitrix CMS上管理和支持项目的控制台应用程序。
功能
- 持续集成。
- 环境设置。
- 管理缓存、模块和搜索系统。
- 创建代理的出色API。
基于Symfony Console构建。
安装
composer require lacodda/bxframe ./vendor/bin/bxcli init