Требования
Для использования MoonShine необходимо соблюдение следующих требований перед установкой:
- php >= 8.1,
- laravel >= 10.23,
- composer > 2.
Composer
composer require "moonshine/moonshine:^2"
Установка
php artisan moonshine:install
После выполнения будет добавлен config/moonshine.php
с базовыми настройками.
Подробнее о файле конфигурации
Также будет добавлена директория с панелью администрирования и ресурсами - app/MoonShine
.
Подробнее о Ресурсах
И также будет добавлен провайдер MoonShineServiceProvider
, где следует регистрировать ресурсы.
Подробнее о Ресурсах
Создание администратора
Если во время установки панели администрирования MoonShine
не был создан администратор или необходимо создать еще одного, это можно сделать, выполнив консольную команду.
php artisan moonshine:user
Сервис-провайдер
Для регистрации новых ресурсов в MoonShine и создания меню нам нужен app/Providers/MoonShineServiceProvider.php
namespace App\Providers; use MoonShine\Menu\MenuGroup;use MoonShine\Menu\MenuItem;use MoonShine\Providers\MoonShineApplicationServiceProvider;use MoonShine\Resources\MoonShineUserResource;use MoonShine\Resources\MoonShineUserRoleResource; class MoonShineServiceProvider extends MoonShineApplicationServiceProvider{ protected function resources(): array { return [ ]; } protected function menu(): array { return [ MenuGroup::make('moonshine::ui.resource.system', [ MenuItem::make('moonshine::ui.resource.admins_title', new MoonShineUserResource()) ->translatable(), MenuItem::make('moonshine::ui.resource.role_title', new MoonShineUserRoleResource()) ->translatable(), ])->translatable(), MenuItem::make('Documentation', 'https://laravel.com') ->badge(fn() => 'Check'), ]; } protected function theme(): array { return []; }}
После установки в MoonShineServiceProvider
будет зарегистрировано несколько ресурсов.
Подробнее о Меню.
Отлично! Теперь вы можете создавать и регистрировать разделы будущей панели администрирования и приступать к работе! Но не забудьте дочитать документацию до конца!
По умолчанию доступ к панели администрирования осуществляется по url /admin
.
Вы можете изменить url в файле конфигурации.