Файловый менеджер
Китайское название-файловый менеджер, также называемый файловым браузером. Он предоставляет нам визуальный интерфейс для управления файлами и папками. используйте Файловый менеджер
, мы можем просматривать, и, печатать, изменять (свойства файла), переименовывать, искать и так далее. Редактор
Я уверен, что друзья очень хорошо знакомы с этим. Это богатый текстовый редактор, поэтому я не буду его повторять. Теперь давайте продемонстрируем, как Файловый менеджер
и Редактор
Интегрироваться в laravel .
Требуется файловый менеджер
возьмите файловый менеджер
Добавьте в composer.json
Мы используем bestmomo/файловый менеджер
require : { "laravel/framework": "5.2.*", "bestmomo/filemanager": "1.1.*" }
Обновление Композитора
$ composer update
Когда обновление будет завершено, поставщик услуг
Добавит в config/app.
php
в
/** * App/Config/App.php */ Bestmomo\Filemanager\FilemanagerServiceProvider::class,
Выпускать
$ php artisan vendor:publish --provider="Bestmomo\Filemanager\FilemanagerServiceProvider"
/** * App/Http/Models/User.php */ /** * Check media all access * * @return bool */ public function accessMediasAll(){ return $this->role->slug == 'admin'; } /** * Check media access one folder * * @return bool */ public function accessMediasFolder() { return $this->role->slug != 'user'; }
После настройки модели необходимо добавить маршруты и контроллеры
Маршрут
// route.php Route::get('medias', ['as'=>'medias', 'uses'=>'Admin\[email protected]']);
файл конфигурации
Новый профиль medias.php
Для настройки импортированного файлового менеджера
Каталога
// Config/medias.php 'filemanager/index.html', 'url-files' =>'/public/filemanager/userfiles/' ];
Метод
В контроллере AdminController
Мы добавляем файловый менеджер
Метод
/** * Show the media panel * * @return Response */ public function filemanager(){ $url = config('medias.url') . '?langCode=' . config('app.locale'); return view('backend.filemanager')->with(compact('url')); }
В контроллере || AdminController || Мы добавляем || файловый менеджер || Метод
@extends('backend.layout.master') @section('head') @stop @section('main') @include('backend.partials.entete', ['heading' => trans('backend/medias.dashboard'), 'operation'=>'', 'symbol' => 'file-image-o', 'superior' => trans('backend/medias.medias')])@stop![]()
Вот он, весь Файловый менеджер
Он интегрирован в laravel
, Но в реальной операции я сообщил о небольшой ошибке: call_user_func_array() ожидает, что параметр 1 будет допустимым обратным вызовом, класс "Kbwebs\MultiAuth\Guard" не имеет метода "accessMediasAll"
предполагается, что "Kbwebs\MultiAuth\Guard"
Нет, accessMediasAll
Метод. Потому что я здесь laravel5.1
Функция многопользовательской аутентификации выполняется в/| Плагине//’Паутина\Мультиавтор\Защита’ | поэтому для получения Пользователя
Добавьте его в модель пользователь()
Например Auth::пользователь->пользователь(), аутентификация()->пользователь()->пользователь()
растворитель:
Узнайте доступ ко всем носителям
и доступ к папке с носителями
Документы /filemanager/connectors/php/default.config.php
* @copyright Authors */ // Laravel init require getcwd() . '/../../../../bootstrap/autoload.php'; $app = require_once getcwd() . '/../../../../bootstrap/app.php'; $kernel = $app->make('Illuminate\Contracts\Http\Kernel'); $response = $kernel->handle( $request = Illuminate\Http\Request::capture() ); $id = $app['encrypter']->decrypt($_COOKIE[$app['config']['session.cookie']]); $app['session']->driver()->setId($id); $app['session']->driver()->start(); // Folder path $folderPath = config('filemanager.folder_path'); // Check if user in authentified if(!$app['auth']->check()) { $laravelAuth = false; } else { //print_r($app['auth']->user()->user()->accessMediasAll());exit; // Check if user has all access if($app['auth']->user()->accessMediasAll()) { $laravelAuth = true; } elseif(method_exists($app['auth']->user(), 'accessMediasFolder')) { // Check if user has access to one folder if($app['auth']->user()->accessMediasFolder()) { // Folder name with user id $folderPath .= 'user' . $app['auth']->id(); $laravelAuth = true; } else { $laravelAuth = false; } } else { $laravelAuth = false; } }
Отдельно $приложение['auth']->пользователь()->доступ ко всем носителям ()
| $приложение[‘auth’]->пользователь () $приложение['auth']->пользователь()->доступ к папке мультимедиа ()
$приложение['auth']->идентификатор ()
Изменение на
$приложение[‘auth’]->пользователь()->пользователь()->Доступ к средам () $приложение['auth']->пользователь()->пользователь ()
$app['auth']->пользователь()->пользователь()->Папка доступа ()
$app['auth']->пользователь()->идентификатор()
После обновления приведенного выше кода вы можете увидеть интерфейс управления файлами файлового менеджера
скачать CKEditor
И распакуйте архив в общедоступный
После папки импортируйте на страницу ckeditor/ckeditor.js
CKEDITOR.replace( 'summary'); config['height'] = 400; CKEDITOR.replace( 'content');
Если мы хотим получить ckeditor
из Файлового менеджера
Для импорта файла, вам необходимо изменить его filebrowserBrowseUrl
опция
var config = { filebrowserBrowseUrl : '/filemanager/index.html' } CKEDITOR.replace( 'summary', config); config['height'] = 400; CKEDITOR.replace( 'content', config);
ckeditor
Загрузите рендеринги изображений