PhpStorm laravel 5 方法未找到

vie*_*n09 5 php phpstorm laravel

当 PhpStorm 尝试修复一个常见错误时,我真是太疯狂了Method 'Bla bla' not found in class.

我已经在谷歌搜索了几天,希望找到解决这个问题的方法,但没有运气。

几乎我读过的每个单一主题都将我指向这个 laravel-ide-helper,但是在安装数千次之后(使用新的 laravel 项目),PhpStorm 仍然无法识别那些该死的方法。

我也在 PhpStorm 中安装了 laravel 插件,但仍然无法工作,现在该怎么办?

这是我的代码。

<?php

namespace App\Http\Controllers;

use App\Article;
use App\Menu;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Requestst;
use Illuminate\Support\Facades\Input;

class PagesController extends Controller
{
    public function index()
    {
        $article = Article::latest('published_at')->get();
        $data = array(
            'articles' => $article
        );
        return view('pages.index' , compact($data));
    }

    public function contact()
    {
        return view('pages.contact');
    }

    public  function about()
    {
        return view('pages.about');
    }
}
Run Code Online (Sandbox Code Playgroud)

请帮忙。

vie*_*n09 1

我运行“php artisan ide-helper:models” -> 是的,它在我的模型文件中写入了一些行,但仍然不起作用我再次运行“php artisan ide-helper:models” -> 不,它创建了一个名为 _ide_helper_models 的新文件.php 文件但仍然无法工作。

最后

我访问文件_ide_helper_models.php并将此功能添加到class Article其中工作 xD

/**
 * Add an "order by" clause for a timestamp to the query.
 *
 * @param string $column
 * @return \Illuminate\Database\Query\Builder|static 
 * @static 
 */
public static function latest($column = 'created_at'){
    return \Illuminate\Database\Query\Builder::latest($column);
}
Run Code Online (Sandbox Code Playgroud)

  • 如果类中存在 __magic 方法,phpStorm 中还有一个选项可以降低严重性。检查“设置 -&gt; 检查 -&gt; PHP -&gt; 未定义” 这不会让您单击该方法,而只是禁用其声明的烦人标记,从而降低严重性。[在此处阅读有关严重性的更多信息](https://www.jetbrains.com/phpstorm/help/configuring-inspection-severities.html) (2认同)