maerduq / usm-starter
3.0.1
2023-11-07 13:08 UTC
Requires
- php: >=7.4.0
- maerduq/usm: ^3.0
- vlucas/phpdotenv: ^5.1
- yiisoft/yii2: ~2.0.45
- yiisoft/yii2-bootstrap5: ~2.0.2
- yiisoft/yii2-symfonymailer: ~2.0.3
Requires (Dev)
- codeception/codeception: ^5.0.0 || ^4.0
- codeception/lib-innerbrowser: ^4.0 || ^3.0 || ^1.1
- codeception/module-asserts: ^3.0 || ^1.1
- codeception/module-filesystem: ^3.0 || ^2.0 || ^1.1
- codeception/module-yii2: ^1.1
- codeception/verify: ^3.0 || ^2.2
- phpunit/phpunit: ~9.5.0
- symfony/browser-kit: ^6.0 || >=2.7 <=4.2.4
- yiisoft/yii2-debug: ~2.1.0
- yiisoft/yii2-faker: ~2.0.0
- yiisoft/yii2-gii: ~2.2.0
README
快速开始使用具有USM功能的Yii2项目。
在MIT许可下发布。
功能
- 预先配置的终极网站管理。
- 使用DotEnv管理环境变量。
- 带有
- 运行您的Yii2应用的PHP容器
- MySQL容器,数据库存储在本地
./runtime/database
文件夹 - Mailpit,一个邮件调试工具
先决条件
安装
您可以使用以下命令安装此项目模板
$ composer create-project --prefer-dist maerduq/usm-starter my-app-name
本地开发入门
$
表示在您的宿主计算机上运行的命令,#
表示在您的应用程序的Docker容器中运行的命令
$ cp .env-dev.example .env
- 设置您环境变量文件。$ docker compose up -d
- 启动您的Docker容器- 在您的
php
Docker容器中打开一个bash shell,通过执行$ docker exec -it <containerId> bash
# bash script-dev-setup
- 快速设置(在您的PHP容器中运行)- 现在访问您的网站https://:8000/
- 一个非常有用的邮件调试器
mailpit
可在https://:8025/上找到 - 您的MySQL服务器可通过localhost:3006访问
生产环境入门
$ cp .env-prod.example .env
- 设置您环境变量文件。- 编辑
.env
中的值,根据您的喜好进行设置。 $ bash deploy
- 安装所有内容。
其他可用的bash脚本
# bash script-dev-watch
- 用于开发期间使用的监视器# php yii message messages/config.php
- 从您的视图生成翻译文件。了解更多信息。
应用程序配置
使用以下命令创建您的应用程序配置文件
$ cp .env.example .env
根据以下变量的说明更改环境变量。
变量
名称 | 描述 |
---|---|
YII_DEBUG | Yii是否应在调试模式下运行(1或0) |
YII_ENV | 要运行的Yii环境设置(dev、test或prod) |
DB_HOST | 您的数据库的主机名(例如localhost) |
DB_NAME | 您的数据库名称 |
DB_USERNAME | 访问您的数据库的用户名 |
DB_PASSWORD | 访问您的数据库的密码 |
DB_CHARSET | 您的数据库的字符集(例如utf8mb4) |
DB_SCHEMA_CACHE | 您的数据库的模式是否应该被缓存 |
ADMIN_EMAIL | 管理员的电子邮件 |
目录结构
assets/ contains assets definition
commands/ contains console commands (controllers)
config/ contains application configurations
controllers/ contains Web controller classes
models/ contains model classes
runtime/ contains files generated during runtime
vendor/ contains dependent 3rd-party packages
views/ contains view files for the Web application
web/ contains the entry script and Web resources
贡献者
- Paul Marcelis
测试
设置
- 创建数据库
app_test
# php tests/bin/yii migrate-usm --interactive=0
- 设置测试数据库的结构# php tests/bin/yii migrate --interactive=0
- 设置测试数据库的结构# composer test
- 运行所有测试# composer test -- unit
- 只运行单元测试
其他命令
php vendor/bin/codecept run
- 运行所有测试php vendor/bin/codecept run --steps
- 运行所有测试并显示每个步骤php vendor/bin/codecept run unit
- 仅运行单元测试php vendor/bin/codecept run functional
- 仅运行功能测试php vendor/bin/codecept run unit widgets/AlertTest
- 运行指定的测试文件php vendor/bin/codecept run unit widgets/AlertTest:testSingleErrorMessage
- 运行单个测试php vendor/bin/codecept run --debug
- 运行并显示调试信息php tests/bin/yii fixture Customer
- 加载 CustomerFixture 数据php tests/bin/yii fixture/unload "*"
- 卸载所有数据