Laravel 5 Class 'form' not found
Solution 1:
Form
isn't included in laravel
5.0 as it was on 4.0, steps to include it:
Begin by installing laravelcollective/html
package through Composer
. Edit your project's composer.json
file to require:
"require": {
"laravelcollective/html": "~5.0"
}
Next, update composer
from the Terminal:
composer update
Next, add your new provider to the providers
array of config/app.php
:
'providers' => [
// ...
'Collective\Html\HtmlServiceProvider',
// ...
],
Finally, add two class aliases to the aliases
array of config/app.php
:
'aliases' => [
// ...
'Form' => 'Collective\Html\FormFacade',
'Html' => 'Collective\Html\HtmlFacade',
// ...
],
At this point, Form
should be working
Source
Update Laravel 5.8
(2019-04-05):
In Laravel 5.8
, the providers
in the config/app.php
can be declared as:
Collective\Html\HtmlServiceProvider::class,
instead of:
'Collective\Html\HtmlServiceProvider',
This notation is the same for the aliases.
Solution 2:
This may not be the answer you're looking for, but I'd recommend using the now community maintained repository Laravel Collective Forms & HTML as the main repositories have been deprecated.
Laravel Collective is in the process of updating their website. You may view the documentation on GitHub if needed.
Solution 3:
Just type the following command in terminal at the project directory and installation is done according the Laravel version:
composer require "laravelcollective/html"
Then add these lines in config/app.php
'providers' => [
// ...
Collective\Html\HtmlServiceProvider::class,
// ...
],
'aliases' => [
// ...
'Form' => Collective\Html\FormFacade::class,
'Html' => Collective\Html\HtmlFacade::class,
// ...
],