webadmin87 / rzwebsys7
RzWebSys7 - 由 Yii Framework 2 驱动的 CMS
Requires
- php: >=5.4.0
- 2amigos/yii2-multi-select-widget: *
- bower-asset/angular: 1.3.x
- bower-asset/angular-i18n: 1.3.x
- creocoder/yii2-nested-sets: 0.9.*
- marciocamello/yii2-x-editable: dev-master
- mihaildev/yii2-ckeditor: *
- mihaildev/yii2-elfinder: *
- newerton/yii2-fancybox: dev-master
- vova07/yii2-select2-widget: 0.1.*
- yiisoft/yii2: 2.0.3
- yiisoft/yii2-bootstrap: 2.0.3
- yiisoft/yii2-imagine: 2.0.3
- yiisoft/yii2-jui: 2.0.3
- yiisoft/yii2-sphinx: 2.0.3
- yiisoft/yii2-swiftmailer: 2.0.3
Requires (Dev)
- yiisoft/yii2-apidoc: 2.0.3
- yiisoft/yii2-codeception: 2.0.3
- yiisoft/yii2-debug: 2.0.3
- yiisoft/yii2-faker: 2.0.3
- yiisoft/yii2-gii: 2.0.3
This package is not auto-updated.
Last update: 2024-09-28 18:23:55 UTC
README
这是一个快速部署互联网项目的平台。包含最需要的模块。
项目页面: http://webadmin87.github.io/rzwebsys7/
系统结构
-
app - 网络应用程序
-
console - 控制台应用程序
-
common - 系统核心
-
vendor - 第三方组件
-
environments - 环境设置
系统要求
-
PHP 5.4
-
Apache 2.2 网络服务器
-
PostgreSql 9.3
-
Composer
安装
假设 composer 已存在于您的命令行工具的搜索路径中。例如,您可以将其放置在 /usr/local/bin
Apache 已配置为将虚拟主机的 DOCUMENT_ROOT 指向 app/web 文件夹
首先需要为 composer 安装插件 fxp/composer-asset-plugin:1.0.0。为此,执行以下命令
composer.phar global require "fxp/composer-asset-plugin:1.0.0"
之后,可以开始安装系统
-
在文件 environments/dev/common/config/main-local.php 和 environments/prod/common/config/main-local.php 中,分别记录开发环境和生产环境与数据库的连接设置。
-
通过 composer 安装依赖。在系统根目录下执行命令
composer.phar install
-
运行脚本 ./init 并选择所需的安装环境
-
运行 ./yii install
-
享受吧 )
管理部分位于地址 /admin/。登录时请使用安装时指定的用户密码 root。
系统包含的模块
主要模块
提供以下功能
-
支持创建和编辑具有层次结构的文本页面,并管理元标签。可以创建任意深度的友好 SEO URL 地址。例如:/articles/php/yii2/
-
菜单。可以创建任意数量的菜单,具有任意深度的层次结构。
-
评论。可以向系统的任何实体添加评论。
-
包含区域。包含文本区域,并可以连接 PHP 脚本。
-
包含区域组。将包含区域组合成组,并可以设置规则以在网站页面上显示。
-
用户和实体访问权限管理。可以在管理后台为不同的用户组限制对实体的访问。
-
根据条件(如 URL 地址、PHP 表达式等)管理网站模板的连接。
-
生成 HTML 和 XML 格式的网站地图。
-
表单反馈,可以将消息发送到电子邮件。
新闻模块
创建新闻和文章分区。具有记录的层次分类。
横幅模块
添加横幅并根据横幅位置显示。支持以下格式:jpg、gif、png、swf。
目录
具有层次分类的商品目录。可以与商店模块集成。
商店模块。
购物车组件通过 AJAX 实现,无需页面刷新。可以创建配送和支付选项,设置订单状态。订单内容保存在管理后台,并发送到网站管理员的电子邮件。
地理模块
包含组织地理目录的数据和组件。
照片画廊
创建照片画廊,可以通过 HTML 5 上传文件。
导入模块
允许从 CSV 文件导入数据。有手动设置文件字段与导入模型匹配的功能。
创建模块
生成新模块的框架
通过系统生成器 App模块生成器 实现。
模块连接到系统
要将模块连接到系统,必须在文件中指定模块标识符,该标识符位于参数 enabledModules 下。
common/config/params.php
创建新模块的实体表。
通过 迁移 实现。迁移基于系统模板创建。
示例(简单实体表,树状实体表)
./yii migrate/create --migrationPath=@webapp/modules/module_name/migrations --templateFile=@console/views/migrations/table.php migration_name
./yii migrate/create --migrationPath=@webapp/modules/module_name/migrations --templateFile=@console/views/migrations/table-tree.php migration_name
其中 module_name 是创建迁移的模块名称,migration_name 是迁移名称。
具体模块迁移应用示例
./yii migrate/up --applyPath=@webapp/modules/module_name/migrations
如果没有指定 applyPath 参数,迁移将应用于所有模块。
创建模型
系统模型必须继承自 \common\db\ActiveRecord 或 \common\db\TActiveRecord(分别对应普通和树状模型)。
每个模型都必须有一个继承自 \common\db\MetaFields 的类。其中应实现返回模型字段对象配置的方法。模型字段是对模型属性的抽象。字段类必须继承自 \common\db\fields\Field。这个抽象对于自动生成管理界面是必要的。
代码示例可以在 main 模块中找到。
CRUD 实体生成
通过基于系统模板的 Gii 模块实现。对于普通和树状实体,分别有 App CRUD 和 App tree CRUD 模板。管理控制器的基础类为 common\controllers\Admin。
建议
资源模块(AssetBundle)必须继承自 \common\components\AssetBundle
生成文档
要生成文档,请使用以下命令
vendor/bin/apidoc api app ./docs/app
vendor/bin/apidoc api common ./docs/common
vendor/bin/apidoc api console ./docs/console
测试
根据模板生成实体固定器的示例
./yii fixture/generate-all --templatePath='@tests/codeception/common/templates/fixtures' --fixtureDataPath='@tests/codeception/common/fixtures/data'