Maxim Vasiliev
Maxim Vasiliev

Reputation: 701

Undefined class Route (Laravel in PhpStorm)

How can I fix this alert in PhpStorm?

enter image description here

And also how to get autocompletion for Route and other Facades?

Upvotes: 53

Views: 28336

Answers (4)

meysamWeb
meysamWeb

Reputation: 121

I solved this problem simply by installing the Laravel idea plugin. Use the following link: https://laravel-idea.com/ You can install it on your phpstorm. Its good feature is that you can use it for 30 days for free and pay the amount after satisfaction.

Upvotes: 0

tylersDisplayName
tylersDisplayName

Reputation: 1641

I know this is an old thread, but it is still relevant. For me, I decided to add the following to my routes/web.php since I don't want to have to worry about regenerating meta data for the app.

use Illuminate\Support\Facades\Route;
use Illuminate\Support\Facades\Auth;

Edit: The above does not add any overhead to PHP as the use simply acts as a reference for PHP.

Upvotes: 25

Bxx
Bxx

Reputation: 1625

Check the Laracasts walkthrough

1) Go to: https://github.com/barryvdh/laravel-ide-helper

2) Click on the gist

Generated version for L5: https://gist.github.com/barryvdh/5227822

3) Click on "Raw" to get the current version (as of June 22, 2016 it is):

https://gist.githubusercontent.com/barryvdh/5227822/raw/4d4b0ca26055fa4753b38edeb94fad2396c497c0/_ide_helper.php

4) Make sure you're in your root directory (this is mine)

cd /var/www/html/project

5) Download the gist:

wget https://gist.githubusercontent.com/barryvdh/5227822/raw/4d4b0ca26055fa4753b38edeb94fad2396c497c0/_ide_helper.php

6) Add "_ide_helper.php" to the .gitignore file

sudo nano .gitignore

Add "_ide_helper.php" on a new line at the bottom

7) Download the .gitignore and _ide_helper.php files into PhpStorm

This is what my PhpStorm project directory looks like afterwards:

enter image description here

8) After the files are downloaded into PhpStorm, the "Undefined class" error will disappear and autocompletion will now work. Might need to restart it.

enter image description here

Upvotes: 74

Filip Koblański
Filip Koblański

Reputation: 10018

There is greate IDE support for Laravel shipped from Baryvdh:

https://github.com/barryvdh/laravel-ide-helper

after you install it you just call in the console:

php artisan ide-helper:generate

which generate alll facede shortcuts in _ide_helper.php file (which you have to exclude from git)

There is also something special for PhpStorm:

php artisan ide-helper:meta

which will give Laravel container context for example:

$foo = app(Foo::class);

PhpStorm will know that the $foo variable is type of Foo class.

Upvotes: 31

Related Questions