我正在使用Voyager为基本的BREAD管理员创建一个小型的Web应用程序,我正在为一个小型非营利组织构建。每年他们需要从Excel中将300-500个新的半复杂条目导入数据库,因此我想构建一个管理脚本,将所有数据自动存储在正确的位置。
是否有结构化的方法向Voyager添加自定义控制器/视图?
(我还没有找到这样的文档,也许我是盲目的。所以我已经开始手动扩展Voyager的现有部分,但随着我的深入,我想确保这是未来增长的最佳选择。)
谢谢。
是的,您可以向voyager添加自定义控制器。
首先让我们制作一个控制器:php artisan make:controller ExportController
//app/Http/Controllers/ExportController.php
class ExportController extends Controller{
public function form(){
return view('export.form');
}
public function submit(){
// do export stuff
}
}
添加两条路线如下:
//routes/web.php
Route::group(['prefix' => 'admin','as' => 'voyager.', 'middleware' => 'admin.user'], function()
{
Route::get('export','ExportController@form')->name('export.form');
Route::post('export','ExportController@submit')->name('export.submit');
});
然后在resources/views/export/form.blade.php
制作相关的视图文件,注意你需要@extends('voyager::master')
使用Voyager的menu builder创建一个新的菜单项