ferleal / laravel-adminer
Jakub Vrana 开发的 Laravel 5.8+ Adminer 包装器
Requires
- php: ^7.1.3
- laravel/framework: ~5.8.0|^6.0|^7.0
Requires (Dev)
- orchestra/testbench: ^3.8|^4.0|^5.0
This package is auto-updated.
Last update: 2024-09-25 10:38:00 UTC
README
介绍
Laravel 5.8+ 对 Adminer 的包装器。Adminer 是 Jakub Vrana 编写的一个快速的单文件数据库管理器/浏览器工具。它是一个很好的 PhpMyAdmin(也支持 PostgreSQL、SQLite、MS SQL、Oracle、Firebird、SimpleDB、Elasticsearch 和 MongoDB)替代品。
这个包旨在与 Laravel 一起使用作为内置的数据库管理器/浏览器。它支持 Adminer 插件 和主题,这极大地增强了这个已经强大的工具。
这个包的灵感来源于:miroc/Laravel-Adminer,senaranya / laravel-adminer
和 onecentlin/laravel-adminer
添加此包的原因是为了使其与 Adminer 保持最新,并添加对 SQLITE 的插件支持。
使用默认主题的数据库视图
使用 'rmsoft' 主题的表视图
包含的插件
Tables-filter
添加在表名上执行(模糊)搜索的能力。当您有一大批表时特别有用。
安装
要使用此包,请运行
composer require ferleal/laravel-adminer
要使用 Adminer 到 Laravel 路由(例如 /adminer),更新 routes/web.php
要使用 Laravel 默认连接自动登录 Adminer
Route::any('adminer', '\Ferleal\Adminer\Http\Controllers\AdminerController@auto');
如果您想在 UI 上手动提供凭据
Route::any('adminer', '\Ferleal\Adminer\Http\Controllers\AdminerController@index');
如果您想使用 sqlite,可以像这样使用它,但请注意通常只允许内部 IP 访问。
Route::any('adminer', '\Ferleal\Adminer\Http\Controllers\AdminerController@sqlite');
当然,您可以根据需要添加任何中间件来限制使用
Route::any('adminer', '\Ferleal\Adminer\Http\Controllers\AdminerController@auto') ->middleware(['admin']);
禁用 CSRF 中间件
Adminer 不与 VerifyCsrfToken 中间件一起工作,因此必须在它的路由上禁用 CSRF。在 VerifyCsrfToken.php
中,通过将 adminer 路由添加到 $except
数组来禁用 CSRF
protected $except = [ 'adminer' ];
要添加插件
Adminer 支持一系列 插件。有关添加新插件的说明,请参阅 CONTRIBUTING
Adminer 主题(可选)
发布主题文件(您可以在不执行此操作的情况下使用默认主题)
php artisan vendor:publish --provider="Ferleal\Adminer\AdminerServiceProvider"
您可以从 Adminer 下载 adminer.css
或创建自定义样式,并将其放置在 public/vendor/adminer
文件夹中。
注意事项
请注意,不要在生产环境中留下 Adminer 开启,它应在本地或代理后面使用,并受到 Laravel Auth 中间件的保护。