cookyii/project

Cookyii CMF 的基础应用程序

安装: 42

依赖: 0

建议: 0

安全: 0

星标: 4

关注者: 2

分支: 1

开放问题: 0

类型:yii2-extension

This package is not auto-updated.

Last update: 2024-09-14 18:04:07 UTC


README

cookyii/project 是一个针对 Yii 2 的应用程序框架,适用于中等和大型项目,这些项目通常由多个应用程序组成(通常为管理员网站和公开网站,但也可以添加其他类型。例如,rest、erp、crm、移动应用程序等)。

框架包含用于 CMS 的工作基本功能,并提供用于实现各种功能的现成模块的工作基础设施。

Yii2

目录结构

目前模板中包含三个应用程序 - frontendbackendcrm。这只是一个应用程序集合的示例。您可以放心地删除任何应用程序或创建自己的应用程序。

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/            виджеты модуля

系统要求

安装(首次部署)

  1. 在控制台中运行以下命令

    composer create-project --prefer-dist --stability=dev cookyii/project new-project
  2. 进入 new-project 目录并使用命令 ./build install 启动安装过程。脚本将提出一些问题并执行以下操作

    • 在数据库中创建新的模式(install/database
    • 在数据库中创建新用户并授予其对新模式的访问权限(install/mysqlUserName
    • 将文件 .env.dist.php 复制到 .env.php 并自动填写某些字段。
  3. 请确保在创建的配置文件 .env.php 中填写了所有必要的字段。

  4. (可选)将文件 ~/*-app/.credentials.dist.php 复制到 ~/*-app/.credentials.php(在应用程序目录中),填写所需数据。

  5. 使用命令 ./build(对于生产环境使用 ./build prod)构建项目。

  6. 使用命令 ./yii account/add 创建新的管理员用户。

  7. (可选)如果您不需要 crmbackend 应用程序,您可以删除目录 crm-appcrm-assetscrm-modulesbackend-appbackend-assetsbackend-modules。同样,如果您需要其他附加应用程序(例如 rest),您可以创建类似目录。

  8. 为您的应用程序配置虚拟主机,例如

    new-project.com     ->  .../frontend-app/web
    backend.new-project.com ->  .../backend-app/web
    crm.new-project.com     ->  .../crm-app/web
    

这就完成了,八步简单操作 =)

在这些操作之后,您的新网站应该可以通过地址 new-project.com 访问。

项目更新(部署)

  1. 从您的仓库更新项目代码库(例如 git pull)。
  2. 使用命令 ./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