mouyong/webman-init-template

dev-master
版本
2022-03-17
版本更新時(shí)間
97
安裝
1
star
簡(jiǎn)介
webman 初始化模板
安裝
注意: 安裝包之前,先移除項(xiàng)目的 composer.lock 文件,避免無法安裝 phinx 包的問題 (http://www.wtbis.cn/q/8016)
rm composer.lock && composer require mouyong/webman-init-template:dev-master
啟用插件
./webman plugin:install zhen-mu/support
./webman plugin:install mouyong/validate
./webman plugin:install mouyong/webman-init-template
rm app/controller/WebmanBaseController.php
引入的第三方包
包名 | 作用 | 文檔 |
---|---|---|
zhenmu/support | 基礎(chǔ)支持 | https://github.com/mouyong/php-support |
mouyong/validate | 表單驗(yàn)證 | https://github.com/mouyong/validate |
webman/console | web 命令行插件 | http://www.wtbis.cn/plugin/1 |
vlucas/phpdotenv | .env 文件管理 | https://github.com/vlucas/phpdotenv |
illuminate/database | 數(shù)據(jù)庫(kù) | https://learnku.com/docs/laravel/9.x/database/12245 |
illuminate/pagination | 數(shù)據(jù)分頁(yè) | https://learnku.com/docs/laravel/9.x/pagination/12247 |
illuminate/events | event 事件 | https://learnku.com/docs/laravel/9.x/events/12228 |
robmorgan/phinx | phinx 數(shù)據(jù)庫(kù)遷移 | https://tsy12321.gitbooks.io/phinx-doc/content/ |
yzh52521/webman-event | webman 基于 laravel event 的事件 | http://www.wtbis.cn/plugin/27 |
使用
- 禁用默認(rèn)路由,并按照文檔配置路由信息
http://www.wtbis.cn/doc/webman/route.html
config/route.php
Route::disableDefaultRoute();
- 配置數(shù)據(jù)庫(kù)連接信息
http://www.wtbis.cn/doc/webman/db/tutorial.html
config/database.php
return [
// 默認(rèn)數(shù)據(jù)庫(kù)
'default' => 'mysql',
// 各種數(shù)據(jù)庫(kù)配置
'connections' => [
'mysql' => [
'driver' => getenv('DB_DRIVER') ?: 'mysql',
'host' => getenv('DB_HOST') ?: '127.0.0.1',
'port' => getenv('DB_PORT') ?: 3306,
'database' => getenv('DB_DATABASE') ?: 'webman',
'username' => getenv('DB_USERNAME') ?: 'root',
'password' => getenv('DB_PASSWORD') ?: '',
'unix_socket' => getenv('DB_UNIX_SOCKET') ?: '',
'charset' => getenv('DB_CHARSET') ?: 'utf8mb4',
'collation' => getenv('DB_COLLATION') ?: 'utf8mb4_bin',
'prefix' => getenv('DB_PREFIX') ?: '',
'strict' => getenv('DB_STRICT') ?: true,
'engine' => getenv('DB_ENGINE') ?: null,
],
],
];
- 在項(xiàng)目目錄下創(chuàng)建 .env 文件,并更具需要配置環(huán)境變量
cp .env.example .env
# database
DB_DRIVER=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=webman
DB_USERNAME=root
DB_PASSWORD=root
- 控制器繼承
<?php
namespace app\controller;
use support\Request;
use Mouyong\WebmanInitTemplate\Controllers\WebmanBaseController;
class Index extends WebmanBaseController
{
<...>
}
- 錯(cuò)誤處理集成
見文檔 README.md 說明: https://github.com/mouyong/php-support
support/exception/Handle.php
<?php
namespace support\exception;
use Webman\Http\Request;
use Webman\Http\Response;
use Throwable;
use Webman\Exception\ExceptionHandler;
use ZhenMu\Support\Traits\WebmanResponseTrait;
class Handler extends ExceptionHandler
{
use WebmanResponseTrait;
<...>
public function render(Request $request, Throwable $exception): Response
{
return $this->renderableHandle($request, $exception); // 這里進(jìn)行調(diào)用,做了一些錯(cuò)誤捕捉
}
}