2014-09-09 1 views
0

Т.Л., д-р - я уже сделал composer sump-autoloadИнтеграция с Laravel с интервенциями и пространствами имен?

Вопрос: Я использую библиотеку Intervention изображения. Я обновляю существующее приложение, которое имеет класс изображения, представляющий модель изображения. Я хочу использовать класс Image Image Intervention по его полному имени пространства имен.

See example here:

Я сужен ошибку я желаю, чтобы решить в пустой тестовый проект с одного маршрута:

Route::get('/{sugar}.jpg', function($sugar) 
{ 
    $path = 'C:/some-path/'; 
    $img = Intervention\Image\Image::make($path . $sugar . '.jpg'); 
    return $img->response('jpg'); 
}); 

Это проблематично линия:

$img = Intervention\Image\Image::make($path . $sugar . '.jpg'); 

Это приводит in:

Call to undefined method Intervention\Image\Image::make() 

Однако пространство имен представляется правильным:

https://github.com/Intervention/image/blob/master/src/Intervention/Image/Image.php

И если я удалить пространство имен и сделать:

$img = Image::make($path . $sugar . '.jpg'); 

Он отлично работает! Только это столкнулось бы с существующим классом Image в реальном приложении.

Спасибо, что прочитали это. Любые предложения по отладке этого пространства имен?

ответ

2

похоже, что неправильное название! Кажется, что это образ с именем, но это не тот, который мне нужен. Правильное название класса: ImageManagerStatic.

Вы можете сделать это, чтобы справиться столкновение имя:

use Intervention\Image\ImageManagerStatic as someUniqueName; 

Вы также можете просто изменить строку в вашем config/app от этого

 'Image'  => 'Intervention\Image\Facades\Image', 

к этому

 'someUniqueName'  => 'Intervention\Image\Facades\Image', 
1

Добавить use Intervention\Image\Facades\Image; в верхней части вашего класса контроллера.

Это помогло мне получить доступ к контроллеру изображения.

Это должно или могло понравиться это:

<?php namespace App\Http\Controllers; 

use Illuminate\Http\Request; 
use Illuminate\Support\Facades\Validator; 
use Illuminate\Support\Facades\Session; 
use Illuminate\Support\Facades\Response; 
use Intervention\Image\Facades\Image; 


class AdminController extends Controller{ 
Смежные вопросы