From 6f2512e3babf4cfab20df1b43d7e3d99b238096e Mon Sep 17 00:00:00 2001 From: Music <1293812979@qq.com> Date: Wed, 19 Oct 2022 15:31:32 +0800 Subject: [PATCH] =?UTF-8?q?sail81=E4=B8=8B=E7=9A=84=E4=B8=80=E4=BA=9B?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env | 10 +++--- app/Console/Commands/importSql.php | 34 ++++++++++++++++++ app/Extends/Libs/BaseController.php | 8 +++-- docker-compose.yml | 53 +++++++++++++++++++++++++++++ phpunit.xml | 3 +- routes/admin.php | 13 +++---- routes/web.php | 4 +++ 7 files changed, 110 insertions(+), 15 deletions(-) create mode 100644 app/Console/Commands/importSql.php create mode 100644 docker-compose.yml diff --git a/.env b/.env index 9f5f4ed..c12dc60 100644 --- a/.env +++ b/.env @@ -9,11 +9,11 @@ LOG_DEPRECATIONS_CHANNEL=null LOG_LEVEL=debug DB_CONNECTION=mysql -DB_HOST=127.0.0.1 +DB_HOST=mysql DB_PORT=3306 DB_DATABASE=b5laravel9cmf -DB_USERNAME=root -DB_PASSWORD=root +DB_USERNAME=sail +DB_PASSWORD=password BROADCAST_DRIVER=log CACHE_DRIVER=file @@ -22,9 +22,9 @@ QUEUE_CONNECTION=sync SESSION_DRIVER=file SESSION_LIFETIME=120 -MEMCACHED_HOST=127.0.0.1 +MEMCACHED_HOST=memcached -REDIS_HOST=127.0.0.1 +REDIS_HOST=redis REDIS_PASSWORD=null REDIS_PORT=6379 diff --git a/app/Console/Commands/importSql.php b/app/Console/Commands/importSql.php new file mode 100644 index 0000000..c427359 --- /dev/null +++ b/app/Console/Commands/importSql.php @@ -0,0 +1,34 @@ +basePath('public') . '/b5laravel9cmf.sql')); + return Command::SUCCESS; + } +} diff --git a/app/Extends/Libs/BaseController.php b/app/Extends/Libs/BaseController.php index d89a697..7ac46e7 100644 --- a/app/Extends/Libs/BaseController.php +++ b/app/Extends/Libs/BaseController.php @@ -13,6 +13,7 @@ use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Routing\Controller; +use Illuminate\Support\Facades\Route; class BaseController extends Controller { @@ -63,8 +64,11 @@ public function __construct(Request $request) */ public function __initialize(): void { - $routeName = $this->request->route()->getActionName(); - list($controller, $action) = explode('@', $routeName); +// $routeName = $this->request->route()->getActionName(); + $routeAction = Route::currentRouteAction(); + $base = substr($routeAction, strrpos($routeAction, '\\') + 1, strlen($routeAction) - strrpos($routeAction, '\\') - 1); + [$controller, $action] = explode('@', $base); +// list($controller, $action) = explode('@', $routeName); $controller = str_replace('Controller', '', class_basename($controller)); $this->controller = strtolower($controller); $this->action = $action; diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..17e3460 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,53 @@ +# For more information: https://laravel.com/docs/sail +version: '3' +services: + laravel.test: + build: + context: ./vendor/laravel/sail/runtimes/8.1 + dockerfile: Dockerfile + args: + WWWGROUP: '${WWWGROUP}' + image: sail-8.1/app + extra_hosts: + - 'host.docker.internal:host-gateway' + ports: + - '${APP_PORT:-80}:80' + - '${VITE_PORT:-5173}:${VITE_PORT:-5173}' + environment: + WWWUSER: '${WWWUSER}' + LARAVEL_SAIL: 1 + XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}' + XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}' + PATH: '/var/www/html/vendor/laravel/sail/node-v16.18.0-linux-x64/bin:$PATH' + volumes: + - '.:/var/www/html' + networks: + - sail + depends_on: + - mysql + mysql: + image: 'mysql/mysql-server:8.0' + ports: + - '${FORWARD_DB_PORT:-3306}:3306' + environment: + MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}' + MYSQL_ROOT_HOST: "%" + MYSQL_DATABASE: '${DB_DATABASE}' + MYSQL_USER: '${DB_USERNAME}' + MYSQL_PASSWORD: '${DB_PASSWORD}' + MYSQL_ALLOW_EMPTY_PASSWORD: 1 + volumes: + - 'sail-mysql:/var/lib/mysql' + - './vendor/laravel/sail/database/mysql/create-testing-database.sh:/docker-entrypoint-initdb.d/10-create-testing-database.sh' + networks: + - sail + healthcheck: + test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"] + retries: 3 + timeout: 5s +networks: + sail: + driver: bridge +volumes: + sail-mysql: + driver: local diff --git a/phpunit.xml b/phpunit.xml index 2ac86a1..49661e5 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -21,8 +21,7 @@ - - + diff --git a/routes/admin.php b/routes/admin.php index 00ffefa..1d2799e 100644 --- a/routes/admin.php +++ b/routes/admin.php @@ -10,6 +10,12 @@ | contains the "web" middleware group. Now create something great! | */ +//Public控制器 +Route::controller(\App\Http\Controllers\Admin\PublicController::class)->group(function (){ + Route::any('/login','login')->name('admin.login'); + Route::get('/logout','logout')->name('admin.logout'); + Route::get('/noauth','noauth')->name('admin.noauth'); +}); //后台管理路由 Route::middleware(['admin.login','admin.auth','admin.demo'])->group(function(){ @@ -20,12 +26,7 @@ Route::get('/download', 'download')->name('admin.download'); }); - //Public控制器 - Route::controller(\App\Http\Controllers\Admin\PublicController::class)->group(function (){ - Route::any('/login','login')->name('admin.login'); - Route::get('/logout','logout')->name('admin.logout'); - Route::get('/noauth','noauth')->name('admin.noauth'); - }); + //Common控制器 Route::controller(\App\Http\Controllers\Admin\CommonController::class)->group(function (){ diff --git a/routes/web.php b/routes/web.php index 5bd1bd6..5a4829a 100644 --- a/routes/web.php +++ b/routes/web.php @@ -19,3 +19,7 @@ $code = $request->get('code','400'); return view('error',['code'=>$code,'msg'=>$msg]); })->name('error'); + +Route::get('ttt', function () { + return 'ehllo'; +}); \ No newline at end of file -- Gitee