라라벨 패키지 Admin 통합 방법 updated_at: 2025-10-29 16:17

라라벨 패키지 Admin 통합하기

제공 중인 라라벨은 각각의 관리자단을 가집니다. 쇼핑몰(laravel-market)경우 는 여러개의 패키지를 통합하여 제공하는데 이들의 Admin단을 통합하는 과정을 설명드리겠습니다.

새로운 관리자 환경 만들기

1. routes 추가

1.1 route/web.php에 관리자 추가하기

Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => 'admin', 'namespace' => '\App\Http\Controllers\Admin'], function () {
    Route::get('/', 'DashboardController@dashboard');
});

1.2. DashboardController 생성

App\Http\Controllers\Admin\DashboardController.php

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;

class DashboardController extends Controller
{
    public function __construct()
    {
    }

    public function dashboard(Request $request)
    {
        return view('admin/dashboard');
    }
}

1.3. dashboard.blade.php

resources/views/admin/dashboard.blade.php 생성

<x-dynamic-component component="pondol-common::common-admin" :path="['Dashboard']">

    <div id="content">
    </div>

    @section('styles')
        @parent
    @endsection

    @section('scripts')
        @parent
    @endsection
</x-dynamic-component>

위와 같이 설정하고 admin으로 접근하면 현재 install한 기타 패키지들이 들이 출력됩니다.
예로 wangta69/laravel-auth 가 install 되어 있으면 [회원관리] 가 Lnb에 출력됩니다.
관리자단 > 회원관리 > 회원 을 클릭하면 아마 아래와 링크로 이동될 것입니다.
https://your_domain/auth/admin/users

패키지별 url에 변경하기

지금 설명하려는 것은 auth/admin/users -> admin/auth/users 처럼 현재 admin 이후루 url을 변경하는 방법입니다.
각 패키마다 별도의 config 파일이 생성되는데 wangta69/laravel-auth 의 경우 아래와 같은 config 화일이 존재 합니다.

  • config/pondol-auth.php
<?php
return [
  'roles' => [
    'default_role' => 'user'
  ],
  'route_auth'=>[
    'prefix'=>'',
    'as'=>'',
    'middleware'=>['web'],
  ],
  'route_auth_admin'=>[
    'prefix'=>'auth/admin',
    'as'=>'auth.admin.',
    'middleware'=>['web', 'admin'],
  ],
  'component' => ['admin'=>['layout'=>'pondol-common::common-admin', 'lnb'=>'pondol-auth::lnb-partial']],
  'redirect_after_login' => ['administrator'=> '/admin', 'manager' => '/', 'user' => '/'],
  'default_redirect_path' => '/home',
];

'route_auth_admin'=>[
    'prefix'=>'admin/auth',  // <!-- auth/admin
    'as'=>'auth.admin.',
    'middleware'=>['web', 'admin'],
  ],

위처럼 적용하면 https://your_domain/auth/admin/users -> https://your_domain/admin/auth/users 로 변경됩니다.

평점을 남겨주세요
평점 : 5.0
총 투표수 : 1

질문 및 답글


고맙습니다.