@squarecode run the following from the command line
composer dump-autoload -o
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
Hey there,
when i found out that illuminate/html was removed from the core, i tried to install the new laravelcollective/html, what i did:
composer.json:
"require": {
"laravel/framework": "5.0.*",
"laravelcollective/html": "~5.0"
},
then i updated using:
composer update
in terminal. Next i edited my config/app.php in serviceproviders:
'Collective\Html\HtmlServiceProvider',
and aliases:
'Form' => 'Collective\Html\FormFacade',
'Html' => 'Collective\Html\HtmlFacade',
But i still get this Error:
Class 'Form' not found
When using this in my view:
{!! Form::open(array('url' => 'foo/bar')) !!}
//
{!! Form::close() !!}
Anybody could help me with this issue?
Greetings and thanks!!
@squarecode run the following from the command line
composer dump-autoload -o
thanks for answer,
i tried this, but there is still no Class 'Form' found.
I really dont know how to process this :(
Any suggestions?
That should have sorted it. Try clearing your cache too.
Still not working.
My composer.json:
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "project",
"require": {
"laravel/framework": "5.0.*",
"laravelcollective/html": "~5.0"
},
"require-dev": {
"phpunit/phpunit": "~4.0",
"phpspec/phpspec": "~2.1"
},
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/"
}
},
"autoload-dev": {
"classmap": [
"tests/TestCase.php"
]
},
"scripts": {
"post-install-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-update-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-create-project-cmd": [
"php -r \"copy('.env.example', '.env');\"",
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
}
}
My config/app.php:
<?php
return [
/*
|--------------------------------------------------------------------------
| Application Debug Mode
|--------------------------------------------------------------------------
|
| When your application is in debug mode, detailed error messages with
| stack traces will be shown on every error that occurs within your
| application. If disabled, a simple generic error page is shown.
|
*/
'debug' => env('APP_DEBUG', false),
/*
|--------------------------------------------------------------------------
| Application URL
|--------------------------------------------------------------------------
|
| This URL is used by the console to properly generate URLs when using
| the Artisan command line tool. You should set this to the root of
| your application so that it is used when running Artisan tasks.
|
*/
'url' => 'http://localhost',
/*
|--------------------------------------------------------------------------
| Application Timezone
|--------------------------------------------------------------------------
|
| Here you may specify the default timezone for your application, which
| will be used by the PHP date and date-time functions. We have gone
| ahead and set this to a sensible default for you out of the box.
|
*/
'timezone' => 'Europe/Berlin',
/*
|--------------------------------------------------------------------------
| Application Locale Configuration
|--------------------------------------------------------------------------
|
| The application locale determines the default locale that will be used
| by the translation service provider. You are free to set this value
| to any of the locales which will be supported by the application.
|
*/
'locale' => 'de',
/*
|--------------------------------------------------------------------------
| Application Fallback Locale
|--------------------------------------------------------------------------
|
| The fallback locale determines the locale to use when the current one
| is not available. You may change the value to correspond to any of
| the language folders that are provided through your application.
|
*/
'fallback_locale' => 'en',
/*
|--------------------------------------------------------------------------
| Encryption Key
|--------------------------------------------------------------------------
|
| This key is used by the Illuminate encrypter service and should be set
| to a random, 32 character string, otherwise these encrypted strings
| will not be safe. Please do this before deploying an application!
|
*/
'key' => env('APP_KEY', 'topsecret'),
'cipher' => MCRYPT_RIJNDAEL_128,
/*
|--------------------------------------------------------------------------
| Logging Configuration
|--------------------------------------------------------------------------
|
| Here you may configure the log settings for your application. Out of
| the box, Laravel uses the Monolog PHP logging library. This gives
| you a variety of powerful log handlers / formatters to utilize.
|
| Available Settings: "single", "daily", "syslog", "errorlog"
|
*/
'log' => 'daily',
/*
|--------------------------------------------------------------------------
| Autoloaded Service Providers
|--------------------------------------------------------------------------
|
| The service providers listed here will be automatically loaded on the
| request to your application. Feel free to add your own services to
| this array to grant expanded functionality to your applications.
|
*/
'providers' => [
/*
* Laravel Framework Service Providers...
*/
'Illuminate\Foundation\Providers\ArtisanServiceProvider',
'Illuminate\Auth\AuthServiceProvider',
'Illuminate\Bus\BusServiceProvider',
'Illuminate\Cache\CacheServiceProvider',
'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
'Illuminate\Routing\ControllerServiceProvider',
'Illuminate\Cookie\CookieServiceProvider',
'Illuminate\Database\DatabaseServiceProvider',
'Illuminate\Encryption\EncryptionServiceProvider',
'Illuminate\Filesystem\FilesystemServiceProvider',
'Illuminate\Foundation\Providers\FoundationServiceProvider',
'Illuminate\Hashing\HashServiceProvider',
'Illuminate\Mail\MailServiceProvider',
'Illuminate\Pagination\PaginationServiceProvider',
'Illuminate\Pipeline\PipelineServiceProvider',
'Illuminate\Queue\QueueServiceProvider',
'Illuminate\Redis\RedisServiceProvider',
'Illuminate\Auth\Passwords\PasswordResetServiceProvider',
'Illuminate\Session\SessionServiceProvider',
'Illuminate\Translation\TranslationServiceProvider',
'Illuminate\Validation\ValidationServiceProvider',
'Illuminate\View\ViewServiceProvider',
'Collective\Html\HtmlServiceProvider',
/*
* Application Service Providers...
*/
'App\Providers\AppServiceProvider',
'App\Providers\BusServiceProvider',
'App\Providers\ConfigServiceProvider',
'App\Providers\EventServiceProvider',
'App\Providers\RouteServiceProvider',
],
/*
|--------------------------------------------------------------------------
| Class Aliases
|--------------------------------------------------------------------------
|
| This array of class aliases will be registered when this application
| is started. However, feel free to register as many as you wish as
| the aliases are "lazy" loaded so they don't hinder performance.
|
*/
'aliases' => [
'App' => 'Illuminate\Support\Facades\App',
'Artisan' => 'Illuminate\Support\Facades\Artisan',
'Auth' => 'Illuminate\Support\Facades\Auth',
'Blade' => 'Illuminate\Support\Facades\Blade',
'Bus' => 'Illuminate\Support\Facades\Bus',
'Cache' => 'Illuminate\Support\Facades\Cache',
'Config' => 'Illuminate\Support\Facades\Config',
'Cookie' => 'Illuminate\Support\Facades\Cookie',
'Crypt' => 'Illuminate\Support\Facades\Crypt',
'DB' => 'Illuminate\Support\Facades\DB',
'Eloquent' => 'Illuminate\Database\Eloquent\Model',
'Event' => 'Illuminate\Support\Facades\Event',
'File' => 'Illuminate\Support\Facades\File',
'Hash' => 'Illuminate\Support\Facades\Hash',
'Input' => 'Illuminate\Support\Facades\Input',
'Inspiring' => 'Illuminate\Foundation\Inspiring',
'Lang' => 'Illuminate\Support\Facades\Lang',
'Log' => 'Illuminate\Support\Facades\Log',
'Mail' => 'Illuminate\Support\Facades\Mail',
'Password' => 'Illuminate\Support\Facades\Password',
'Queue' => 'Illuminate\Support\Facades\Queue',
'Redirect' => 'Illuminate\Support\Facades\Redirect',
'Redis' => 'Illuminate\Support\Facades\Redis',
'Request' => 'Illuminate\Support\Facades\Request',
'Response' => 'Illuminate\Support\Facades\Response',
'Route' => 'Illuminate\Support\Facades\Route',
'Schema' => 'Illuminate\Support\Facades\Schema',
'Session' => 'Illuminate\Support\Facades\Session',
'Storage' => 'Illuminate\Support\Facades\Storage',
'URL' => 'Illuminate\Support\Facades\URL',
'Validator' => 'Illuminate\Support\Facades\Validator',
'View' => 'Illuminate\Support\Facades\View',
'Form' => 'Collective\Html\FormFacade',
'Html' => 'Collective\Html\HtmlFacade',
],
];
First of all i updated, next i inserted in serviceproviders and aliases, than i cleared application cache. Still getting:
Class 'Form' not found
Should i do new laravel install? greetings!
Should the provider be at the end? Can't remember if it matters.
Mine is at the end, so try that.
found solution.
i had to clear the route cache too.
php artisan route:clear
php artisan cache:clear
worked.
Thanks!
Did you have route caching on?
Why would route caching fix this? Sure you didn't just have cached files on a VM?
@bashy I don't know, that's why I asked previously did they clear their browser and other caches. Apparently it didn't help.
Hey,
I'm currently experiencing the same issue.. It keeps telling me the 'Class 'Form' not found'.
Tried everything in this topic, and about 10~15 other topics. This seemed most recent and about 5.1, anyone else got an idea?
What I've tried so far: Obviously modified the composter.json file, and config/app.php as described in this topic and the Collective docs: http://laravelcollective.com/docs/5.1/html
What I've tried:
php artisan cache:clear
php artisan route:clear
composer dump-autoload -o
composer update (also removed and re-installed 'vendor' folder
Cleared cache by removeing all store/framework/*/* files
I've got no other ideas of what it could be.. (New to Laravel, first post here, Hi! :-)
Update: I've been able to fix it.
As none of the things above worked and it should've just been simply the class/file that couldn't been found I decided to require the required files myself to see if that had any effect. Tried doing that int he config/app.php but nothing worked there, actually the code was never executed (cached too somewhere).
Found some commands online that I executed and finally the page gave me some errors (as the require was invalid as intended) and that eventually worked.
php artisan optimize
php artisan config:cache (probably this one that did his magic)
php artisan route:cache
Thanks @JeroenSormani, your solution worked.
I tried running the commands @gelther used in my Laravel 5.2 project and for each one, I got this error:
[Symfony\Component\Debug\Exception\FatalErrorException]
Call to undefined method Illuminate\Foundation\Application::bindShared
()
What could be causing this?
I can't get it to work either and I have tried all the "solutions" above. Does anyone know how to resolve this?? I am using Laravel 5.3
@revgov try get it from the global space.
App\Providers\FormServiceProvider.php:
// ...
public function boot()
{
\Form::component(
'bsText', 'partials.form.text', ['name', 'value', 'attributes']
);
}
// ...
php artisal all:clear
Gelther solution worked for me too which is "php artisan config:cache"
I had a similar issue where my view was caching the Form collective alias not being available. I suspect it was due to the fact that I added it into config/app before composer was done installing it. Using php artisan config:cache was the solution for me.
Gelthers solution helped me. Thanks
Thanks @Gelther your solution is worked for me.. thanks a lote
Gelther you are great, as only your solution worked like a charm. Thank you so much. you were right, your second command was behind the charm. The third statement threw me an error
HI, this gave me a parse error, any idea why. Thanks.
Collective\Html\HtmlServiceProvider::class,
@u2rajendra welcome to this 9 year old thread
Nobody should be still using LaravelCollective html as it has been unsupported for many, many years.
Please or to participate in this conversation.