Laravel 5.5 - Helper类在视图/刀片模板内部工作,但在控制器内部不起作用

时间:2017-09-13 15:50:12

标签: laravel-5.5

我自己创建了一个名为Perm的辅助类,它意味着返回当前会话的用户(我知道,我可以使用默认的auth / user,但这不会像从头开始创建一个!)

..遗憾的是,创建的帮助程序类只能在视图中运行,但在控制器中根本不起作用..这有点遗漏了这一点。

每当我试图在控制器内使用它时,它会弹出:

  

" Class' App \ Http \ Controllers \ Perm'找不到"

我非常感谢任何帮助。

HelperServiceProvider.php:

namespace App\Providers;

use Illuminate\Support\Facades\View;
use Illuminate\Support\ServiceProvider;

class HelperServiceProvider extends ServiceProvider
{
    public function boot()
    {
        //
    }

    public function register()
    {
        foreach( glob (app_path().'/Helpers/*.php' ) as $filename ) // register all helpers
        {
            require_once($filename);
        }
    }
}

助手/ PermHelper.php:

use App\User;

class Perm
{
    public static function user()
    {
        if(!session('user_id')) return null;
        return User::find(session('user_id'));
    }
}

config / app.php的部分,'提供商'阵列:

// Custom
App\Providers\HelperServiceProvider::class,

1 个答案:

答案 0 :(得分:0)

如果您遇到此问题。 使用适当的命名空间。