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
。