ErrorException未定义属性:Illuminate \ Auth \ SessionGuard :: $ id

时间:2018-02-15 14:12:51

标签: laravel-5.3

我在laravel中创建了管理员。所以现在我想作为管理员发布到数据库,但当我做了我有上面的错误。 我有一个帖子表,我有管理员ID,我有管理员表,但它无法工作。 //创建帖子

$post =  new Post;
    $post->title = $request->input('title');
    $post->body = $request->input('body');
    $post->admin_id = Auth()->guard('admin')->id;
    $post->save();

我确实喜欢上面的这个,但我得到了错误。 我也试过

$post->admin_id = Auth()->admin()->id;

我找不到admin()。 我按照说明做了一切,但我得到了错误。

$post->user_id = Auth()->user()->id;

虽然这有效,但我不知道该怎么做。我按照Github中的说明做了一切,但我在这里遇到了麻烦。请帮我 警卫声明:

'guards' => [
        'web' => [
            'driver' => 'session',
            'provider' => 'users',
        ],

        'api' => [
            'driver' => 'token',
            'provider' => 'users',
        ],
        'admin' => [
            'driver' => 'session',
            'provider' => 'admins',
        ],
        'admin-api' => [
            'driver' => 'token',
            'provider' => 'admins',
        ],
    ],

2 个答案:

答案 0 :(得分:3)

请检查您的代码,它应该像这样。

auth()-> id()

答案 1 :(得分:0)

尝试

auth()->guard('admin')->id();