Ich aktualisiere von 4.2 direkt auf 5.1 und habe Probleme mit den Klassen Html und Form.
Ich folgte den Upgrade-Hinweisen und tat es
Aber meine Ansichten funktionieren nicht. Ich erhalte entweder Class HTML does not exist
bei der Verwendung von HTML :: router oder Class html does not exist
bei der Verwendung von link_to_route
Ich habe auch Illuminate\html
anstelle von laravelcollective
ausprobiert, ich habe einen composer dump-autoload
gemacht.
Die kompletten Fehler:
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
Was vermisse ich?
Ich habe alle Antworten ausprobiert und keiner hat aus irgendeinem Grund für mich gearbeitet. Letztendlich habe ich eine komplett neue Laravel-Anwendung erstellt, meinen Code kopiert und dann hat es funktioniert.
Mein Problem ist gelöst, aber die eigentliche Ursache ist noch unbekannt. Ich habe eine komplett neue Laravel-Installation erstellt und meine Quelle (alles) kopiert. Die neue Anwendung funktionierte sofort (nach der Installation von illuminate/html).
Sie glauben also, ich habe mit Paketen etwas falsch gemacht? Das habe ich mir gedacht, und dann habe ich die beiden Verzeichnisse verglichen, nur um herauszufinden, dass sie identisch waren. Es ist also ein echtes Rätsel.
Jetzt funktioniert alles, ich habe meine neue Anwendung einfach umbenannt und kann fortfahren.
Ich weiß, irgendwann hatte ich wahrscheinlich sowohl die kollektiven als auch die beleuchteten Versionen des HTML-Pakets installiert. Das hat wahrscheinlich alles kaputt gemacht.
Fügen Sie in composer.json hinzu
"illuminate/html": "5.*"
und führen Sie das Composer-Update aus
Öffnen Sie Ihre config/app.php
unter 'Anbieter' hinzufügen
Illuminate\Html\HtmlServiceProvider::class,
unter "Aliase" hinzufügen
'Form' => Illuminate\Html\FormFacade::class,
'Html' => Illuminate\Html\HtmlFacade::class,
und unter Ihren Blade-Vorlagen als solche verwenden
{!! HTML::style('assets/css/flatten.css') !!}
Meine Lösung in meinem Fall war ein Problem mit dem Klassennamen CASE-Sensitive.
In my config/app.php (in aliases)
'Form' => Collective\Html\FormFacade::class,
'Html' => Collective\Html\HtmlFacade::class,
Ich habe versucht, diesen Code anzuzeigen:
{!! HTML::mailto('mailto:[email protected]', '[email protected]'); !!}
und das war ein fehler:
"FatalErrorException in ccf70b1d0b9930d6c4e8f3859fff448f line 11: Class 'HTML' not found"
Der Name der Klasse 'HTML' lautet CASE-Sensitive. Sie sollten 'Html' wie in Ihrer config-Datei (config/app.php) verwenden.
Hoffe diese Hilfe für einige Leute.
Bitte ändern Sie Ihre Blade-Datei hier
{{ HTML::style('css/bootstrap.min.css') }}
zu
{{ Html::style('css/bootstrap.min.css') }}
Es funktioniert.
Ein einfacher Neustart nach dem Composer-Update hat für mich perfekt funktioniert. Ich suchte nach der Antwort und blieb an derselben Stelle hängen. Ich würde vorschlagen, config: cache und cache auszuführen: die IDE löschen und neu starten. Es wird klappen.
Ich glaube, ich habe die Lösung gefunden.
In Ihrem app.php
haben Sie erklärt
'Form' => Illuminate\Html\FormFacade::class,
'Html' => Illuminate\Html\HtmlFacade::class,
In Ihrem View
haben Sie dieselbe Klasse als aufgerufen
{!! HTML::style('css/bootstrap.min.css') !!}
Es gibt nichts falsches an den Paketen als der markierten Antwort oben, sondern eher in der Großschreibung des Wortes HTML
als in der vorherigen Dokumentation Version 5.0.
Es sollte sein
'Form' => Illuminate\Html\FormFacade::class,
'HTML' => Illuminate\Html\HtmlFacade::class,
editiere config/app.php
füge dies zu provider
Collective\Html\HtmlServiceProvider::class,
und dies in Aliase
'Form' => Collective\Html\FormFacade::class,
'Html' => Collective\Html\HtmlFacade::class,
dies ist der richtige Weg Wenn Sie versuchen, Form :: open () oder eine der Form-Methoden in einer neuen Installation von Laravel 5 zu verwenden, würden Sie etwa Folgendes erhalten: http://laraveldaily.com/class-form-not-found-in-laravel-5/
Versuch es
pHP-Handwerker-Cache: klar
pHP Handwerker übersichtlich kompiliert