cookyii / project
Cookyii CMF 的基础应用程序
Requires
- php: >=5.5.0
- cookyii/base: dev-master
- cookyii/module-account: dev-master
- cookyii/module-client: dev-master
- cookyii/module-feed: dev-master
- cookyii/module-media: dev-master
- cookyii/module-page: dev-master
- cookyii/module-postman: dev-master
- cookyii/module-translation: dev-master
- rmrevin/yii2-favicon-widget: ~1.2
- rmrevin/yii2-fontawesome: ~2.12
- rmrevin/yii2-imperavi-bundle: ~1.0
- rmrevin/yii2-ionicon: ~1.1
- rmrevin/yii2-minify-view: ~1.9
- rmrevin/yii2-rbac-command: ~1.3
- rmrevin/yii2-socicon: ~1.0
- yiisoft/yii2: ~2.0
- yiisoft/yii2-authclient: ~2.0
- yiisoft/yii2-composer: ~2.0
- yiisoft/yii2-imagine: ~2.1
- yiisoft/yii2-queue: dev-master
- yiisoft/yii2-swiftmailer: ~2.0
Requires (Dev)
- codeception/codeception: ~2.0
- codeception/phpbuiltinserver: ~1.2
- codeception/specify: ~0.4
- codeception/verify: ~0.2
- yiisoft/yii2-debug: ~2.0
- yiisoft/yii2-faker: ~2.0
Suggests
- predis/predis: For redis queue need predis client.
This package is not auto-updated.
Last update: 2024-09-14 18:04:07 UTC
README
cookyii/project 是一个针对 Yii 2 的应用程序框架,适用于中等和大型项目,这些项目通常由多个应用程序组成(通常为管理员网站和公开网站,但也可以添加其他类型。例如,rest、erp、crm、移动应用程序等)。
框架包含用于 CMS 的工作基本功能,并提供用于实现各种功能的现成模块的工作基础设施。
目录结构
目前模板中包含三个应用程序 - frontend、backend 和 crm。这只是一个应用程序集合的示例。您可以放心地删除任何应用程序或创建自己的应用程序。
conf.d/ файлы конфигурации для окружения (например nginx или rabbitmq)
common/ общие компоненты для всех приложений
frontend-app/ код приложения frontend
frontend-assets/ ресурсы для приложения frontend
frontend-modules/ модули приложения frontend
backend-app/ код приложения backend
backend-assets/ ресурсы для приложения backend
backend-modules/ модули приложения backend
crm-app/ код приложения crm
crm-assets/ ресурсы для приложения crm
crm-modules/ модули приложения crm
messages/ переводы языковых строк для всех приложений
resources/ модели ActiveRecord для всех приложений
vendor/ пакеты сторонних разработчиков
项目内部目录结构
frontend-assets/ исходники ресурсов, которые будут опубликованны в публичной части приложения
frontend-app/
assets/ бандлы с ресурсами приложения
components/ компоненты приложения
config/ конфигурация приложения
controllers/ контроллеры приложения
tests/ автоматические тесты приложения
views/ представления (view) приложения
web/ публичная часть приложения, доступная из веба
widgets/ виджеты приложения
模块内部目录结构
frontend-modules/
ModuleName/
assets/ ресурсы и бандлы для модуля
commands/ контроллеры команд для выполнения в терминале (cli)
components/ компоненты модуля
controllers/ контроллеры модуля
views/ представления (view) модуля
widgets/ виджеты модуля
系统要求
- PHP 5.4 或更高版本
- NodeJS 0.10 或更高版本
- Composer
- npm
安装(首次部署)
-
在控制台中运行以下命令
composer create-project --prefer-dist --stability=dev cookyii/project new-project
-
进入
new-project目录并使用命令./build install启动安装过程。脚本将提出一些问题并执行以下操作- 在数据库中创建新的模式(
install/database) - 在数据库中创建新用户并授予其对新模式的访问权限(
install/mysqlUserName) - 将文件
.env.dist.php复制到.env.php并自动填写某些字段。
- 在数据库中创建新的模式(
-
请确保在创建的配置文件
.env.php中填写了所有必要的字段。 -
(可选)将文件
~/*-app/.credentials.dist.php复制到~/*-app/.credentials.php(在应用程序目录中),填写所需数据。 -
使用命令
./build(对于生产环境使用./build prod)构建项目。 -
使用命令
./yii account/add创建新的管理员用户。 -
(可选)如果您不需要
crm和backend应用程序,您可以删除目录crm-app、crm-assets、crm-modules、backend-app、backend-assets和backend-modules。同样,如果您需要其他附加应用程序(例如rest),您可以创建类似目录。 -
为您的应用程序配置虚拟主机,例如
new-project.com -> .../frontend-app/web backend.new-project.com -> .../backend-app/web crm.new-project.com -> .../crm-app/web
这就完成了,八步简单操作 =)
在这些操作之后,您的新网站应该可以通过地址 new-project.com 访问。
项目更新(部署)
- 从您的仓库更新项目代码库(例如
git pull)。 - 使用命令
./build(对于生产环境使用./build prod)构建项目。
配置
您可以在 ./common/config/、./frontend-app/config/、./backend-app/config/、./crm-app/config/、./console-app/config/ 和项目构建配置中更改任何设置。
可用的 ./build 命令
./build install- 启动安装过程。./build或./build dev- 为开发环境构建项目。./build demo- 为演示环境构建项目。./build prod- 为生产环境构建项目。
还可用以下命令(它们在 set/* 命令的范围内执行,这里只提供参考)
./build map- 显示所有命令列表。./build self/update- 更新构建库build.phar。./build clear- 删除所有应用程序中的所有临时文件和日志。./build clear/*- 删除特定应用程序中的所有临时文件和日志。./build composer- 从composer.lock安装composer依赖关系。./build composer/update- 下载新的composer依赖项并更新composer.lock。./build composer/install- 下载composer.lock中指定的composer依赖项的新版本。./build composer/install-prod- 下载composer.lock中指定的composer依赖项的新版本,但不包含require-dev。./build composer/selfupdate- 更新composer。./build composer/update-fxp- 更新插件fxp/composer-asset-plugin。./build npm/install- 安装npm依赖项。./build npm/update- 更新npm依赖项。./build bower/install- 安装bower依赖项。./build bower/update- 更新bower依赖项。./build migrate- 执行所有应用程序的所有新迁移。./build migrate/*- 执行特定应用程序的所有新迁移。./build rbac- 更新所有应用程序的rbac规则。./build rbac/*- 更新特定应用程序的rbac规则。./build less- 为所有应用程序编译less。./build less/*- 为特定应用程序编译less。