Intereting Posts
есть ли способ получить общие значения между двумя массивами в php? Почему текст PHP echo'd теряет форматирование? Установка JMSSerializerBundle: обходная Неустранимая ошибка: аргумент 1 передан в JMSSerializerBundle \ Twig \ SerializerExtension :: __ construct () .htaccess сделать папку действовать как root? Определите, является ли массив ассоциативным (хэш) или нет Может ли кто-нибудь подделать IP-адрес на любой номер? Запуск действия Zend Framework из командной строки Для очищенных или неустановленных массивов php, собраны ли элементы мусора? php – динамика доступа crm 2011 с веб-сервисами PHP – HTML очиститель – привет w <o> rld / world tutorial striptags PHP – Объединение двух массивов в один массив (также Remove Duplicates) как получить информацию из базы данных для каждой опции, указанной в списке выбора, когда вы выбираете каждую опцию в списке выбора Методы для класса исключения Xdebug Altorouter не может выполнять маршруты Проверка даты, которая выпадает на рабочий день или на выходные?

Laravel 5.1: класс html не существует

Я обновляюсь от 4.2 до 5.1 и сталкиваюсь с проблемами с классами Html и Form.

Я следил за обновлениями и делал

  • добавить "laravelcollective / html": "~ 5.0" к composer.json
  • обновление композитора
  • Добавить Collective \ Html \ HtmlServiceProvider :: класс для поставщиков в app.php
  • add Form '=> Collective \ Html \ FormFacade :: class, Html' => Коллективный \ Html \ HtmlFacade :: класс для псевдонимов в app.php

Но мои взгляды не работают. Я получаю, что Class HTML does not exist при использовании HTML :: router или get Class html does not exist при использовании link_to_route

Я также попробовал Illuminate\html вместо laravelcollective , я сделал composer dump-autoload .

Полные ошибки:

 ErrorException in Container.php line 736: Class html does not exist (View: C:\Dev\www\admin\resources\views\clubs\index.blade.php) ReflectionException in Container.php line 736: Class html does not exist 

Что мне не хватает?


Я попробовал все ответы, и никто из них не работал для меня по какой-то причине. В конечном итоге я создал совершенно новое приложение laravel, скопировал свой код, а затем начал работать, поэтому, хотя проблема решена, проблема остается загадкой.

Добавить в композитор.json

  "illuminate/html": "5.*" 

и запустить обновление для композитора

Откройте конфигурацию / app.php

добавить под «поставщиками»

 Illuminate\Html\HtmlServiceProvider::class, 

добавить под «псевдонимы»

 'Form' => Illuminate\Html\FormFacade::class, 'Html' => Illuminate\Html\HtmlFacade::class, 

и под вашими шаблонами клинков, используйте как таковые

 {!! HTML::style('assets/css/flatten.css') !!} 

Мое решение в моем случае было проблемой с именем класса CASE-Sensitive.

 In my config/app.php (in aliases) 'Form' => Collective\Html\FormFacade::class, 'Html' => Collective\Html\HtmlFacade::class, 

Я пытаюсь использовать этот код:

 {!! HTML::mailto('mailto:example@example.com', 'example@example.com'); !!} 

и это была ошибка:

 "FatalErrorException in ccf70b1d0b9930d6c4e8f3859fff448f line 11: Class 'HTML' not found" 

Имя класса «HTML» CASE-Sensitive. Вы должны использовать «Html», как в вашем файле config (config / app.php).

Надеюсь, эта помощь для некоторых людей.

Измените файл клика

 {{ HTML::style('css/bootstrap.min.css') }} 

в

 {{ Html::style('css/bootstrap.min.css') }} 

Работает.

Простой перезапуск после обновления композитора отлично работал для меня. Я искал ответ и застрял в том же положении. Я бы предложил, запустите config: cache и cache: очистите и перезапустите среду IDE. Это будет работать.

Моя проблема решена, но фактическая причина пока неизвестна. Я создал совершенно новую установку laravel и скопировал мой источник (все это). Новое приложение сразу работало (после установки подсветки / html).

Значит, вы думаете, что я сделал что-то не так с пакетами? Это то, что я подумал, а затем я сделал разницу по двум каталогам, только чтобы узнать, что они идентичны. Так что это настоящая загадка.

Итак, теперь все работает, я просто переименовал новое приложение и могу продолжить.

Я знаю, что в какой-то момент у меня, вероятно, были установлены как коллективные, так и освещаемые версии пакета HTML. Это, скорее всего, все испортило.

это правильно. Если вы попытаетесь использовать Form :: open () или любой из методов Form в новой установке Laravel 5, вы получите что-то вроде этого: http://laraveldaily.com/class-form-not-found -в-Laravel-5 /

Думаю, я нашел решение.

В своем app.php вы заявили

 'Form' => Illuminate\Html\FormFacade::class, 'Html' => Illuminate\Html\HtmlFacade::class, 

В вашем View вы назвали тот же класс, что и

 {!! HTML::style('css/bootstrap.min.css') !!} 

В пакетах нет ничего плохого, как отмеченный ответ выше, а скорее разница в капитализации слова HTML как предыдущая документация версии 5.0. *.

Должен быть

 'Form' => Illuminate\Html\FormFacade::class, 'HTML' => Illuminate\Html\HtmlFacade::class, 

Попробуй

Кэш php-artisan: clear

php-artisan с ясной компиляцией

edit config / app.php

добавьте это в поставщиков

 Collective\Html\HtmlServiceProvider::class, 

и это в псевдонимы

 'Form' => Collective\Html\FormFacade::class, 'Html' => Collective\Html\HtmlFacade::class,