承接 miroc/laravel-adminer 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

miroc/laravel-adminer

最新稳定版本:4.5.0

Composer 安装命令:

composer require miroc/laravel-adminer

包简介

Adminer (by Jakub Vrana) wrapper for Laravel 5

README 文档

README

WARNING: This repository is unmaintained. Please use other Laravel-Adminer packages.

Laravel-Adminer

Laravel 5 wrapper for Adminer. Adminer is an excellent database management tool in a single PHP file written by Jakub Vrana. It's a great replacement for PhpMyAdmin (also supports PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch and MongoDB).

Usage

To include the library, go to your project's folder and run:

composer require "miroc/laravel-adminer"

To add adminer to Laravel routes (e.g. /adminer), update routes/web.php file with:

Route::any('adminer', '\Miroc\LaravelAdminer\AdminerController@index');

To autologin Adminer with Laravel default connection, add the following controller instead:

Route::any('adminer', '\Miroc\LaravelAdminer\AdminerAutologinController@index');

Disabling CSRF Middleware

Adminer doesn't work with VerifyCsrfToken middleware, so it has to be disabled on its route.

Laravel 5.1+

In VerifyCsrfToken.php disable CSRF by adding adminer route to $except array:

protected $except = [
    'adminer'
];

Laravel 5.0

The easiest way is to create a custom VerifyCsrfToken middleware that excludes selected routes:

use Closure;
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken;

class CustomVerifyCsrfToken extends VerifyCsrfToken {

    protected $excludedRoutes = ['adminer'];

	public function handle($request, Closure $next)
	{
        if ($this->isExcludedRoute($request)){
            return $next($request);
        } else {
            return parent::handle($request, $next);
        }
	}

    private function isExcludedRoute($request)
    {
        if (count($request->segments()) > 0
            && in_array($request->segment(1), $this->excludedRoutes)){
            return true;
        } else {
            return false;
        }
    }
}

And then use that instead of VerifyCsrfToken in Kernel.php

protected $middleware = [
	'Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode',
	'Illuminate\Cookie\Middleware\EncryptCookies',
	'Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse',
	'Illuminate\Session\Middleware\StartSession',
	'Illuminate\View\Middleware\ShareErrorsFromSession',
	'Path\To\CustomVerifyCsrfToken',
];

Remarks

Due to function name conflicts of Laravel5 and Adminer, adminer.php file functions 'cookie()', 'redirect()' and 'view()' are prefixed with 'adm_' prefix.

If you find any problem, please let me know.

统计信息

  • 总下载量: 91.76k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 59
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 58
  • Watchers: 4
  • Forks: 25
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-05-02