laravel-adminの拡張機能

#最初に
ひたすら試してるだけです。
随時追加、修正していく予定です。

#拡張機能

| 名称           | 用途 |
|:---------------|:------------------|
| Backup         | バックアップ |
| Scheduling     | タスクスケジュール一覧 |
| Helpers        | ユーティリティ |
| Media Manager  | ファイル管理 |
| API tester     | APIテスト |
| Config manager | コンフィグ管理 |

#インストール手順

##Backup

###インストール
```
composer require laravel-admin-ext/backup -vvv
php artisan admin:import backup
```

###スケジュール登録

```devproject\app\Console\Kernel.php
    /**
     * Define the application's command schedule.
     *
     * @param  \Illuminate\Console\Scheduling\Schedule  $schedule
     * @return void
     */
    protected function schedule(Schedule $schedule)
    {
        // $schedule->command('inspire')
        //          ->hourly();
        $schedule->command('telescope:prune --hours=72')->dailyAt('04:00');
        $schedule->command('backup:run --only-db')->dailyAt('02:00');       // 追加
    }
```

###動作確認

[https://homestead.test/admin/backup](https://homestead.test/admin/backup)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/413817/d44783ed-00ea-2c7f-a5bd-0f05b09829ae.png)



###出来ること
- オプションでDBのみのバックアップなどが可能



##Scheduling

###インストール

```
composer require laravel-admin-ext/scheduling
php artisan admin:import scheduling
```

###動作確認

[https://homestead.test/admin/backup](https://homestead.test/admin/backup)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/413817/4238c240-e6da-41af-65cd-17a56b840285.png)

###Descriptionが表示されない

```devproject\vendor\spatie\laravel-backup\src\Commands\BackupCommand.php
protected $description = 'Run the backup.';
```
と、あるのでdescriptionが表示されると思ったがダメだった

###出来ること
スケジュール一覧が見れる、一覧から実行することが出来る
（作成、編集が出来るわけではないので使う機会なさそう）


##Helpers

###インストール

```
composer require laravel-admin-ext/helpers
php artisan admin:import helpers
```

###動作確認

[https://homestead.test/admin/helpers/scaffold](https://homestead.test/admin/helpers/scaffold)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/413817/8cd13772-6ec2-a1e4-de62-0192b60f73ce.png)

- 使えたらかなりよさそう

##Media manager

###インストール
```
composer require laravel-admin-ext/media-manager -vvv
php artisan admin:import media-manager
```

```devproject\config\admin.php
    /*
    |--------------------------------------------------------------------------
    | Settings for extensions.
    |--------------------------------------------------------------------------
    |
    | You can find all available extensions here
    | https://github.com/laravel-admin-extensions.
    |
    */
    'extensions' => [

        // ここから追加
        'media-manager' => [
            'disk' => 'admin'
            // とりあえずlaravel-adminで管理しているdiskを対象に
        ],
        // ここまで
    ],
```

###動作確認

[https://homestead.test/admin/media](https://homestead.test/admin/media)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/413817/8902d4bc-b4f2-6676-806e-4501f9a8658e.png)


##API tester

###インストール

```
composer require laravel-admin-ext/api-tester -vvv
php artisan vendor:publish --tag=api-tester
php artisan admin:import api-tester
```

###動作確認
[https://homestead.test/admin/api-tester](https://homestead.test/admin/api-tester)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/413817/6df344f9-36ff-6d09-07bf-0cfc70896003.png)

###使い方
まだです。

##Config manager

###インストール

```
composer require laravel-admin-ext/config
php artisan migrate
```

```devproject\app\Providers\AppServiceProvider.php
use Encore\Admin\Config\Config; //追加

    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        Config::load();      //追加
    }
```

```
php artisan admin:import config
```

###動作確認

[https://homestead.test/admin/config](https://homestead.test/admin/config)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/413817/e88bff88-f2bd-70cf-dd9f-d2ed81066cc9.png)