尝试出现多个模型错误的问题

时间:2019-11-19 09:10:12

标签: laravel

这是我的文件,这里的问题是什么,当我在项目中使用多个模型时,请使用此代码,当我使用登录尝试功能时,它显示错误,请任何人帮助我解决这里的问题在此代码中,有人可以帮助我,我请从在线视频中获取此代码,当我使用该代码时,它可以告诉我错误提示是问题所在

   <?php

return [



    'defaults' => [
    'guard' => 'web',
    'passwords' => 'users',
    ],


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

    'api' => [
        'driver' => 'token',
        'provider' => 'users',
        'hash' => false,
    ],
    'owner' => [
        'driver' => 'session',
        'provider' => 'owners',
    ],
    ],



    'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
    ],
    'owners' => [
        'driver' => 'eloquent',
        'model' => App\owners::class,
    ],

    // 'users' => [
    //     'driver' => 'database',
    //     'table' => 'users',
        // ],
    ],



    'passwords' => [
    'users' => [
        'provider' => 'users',
        'table' => 'password_resets',
        'expire' => 60,
        'throttle' => 60,
    ],
    'owner' => [
        'provider' => 'owners',
        'table' => 'password_resets',
        'expire' => 60,
        'throttle' => 60,
    ],
    ],


    'password_timeout' => 10800,

    ];


    <?php

namespace App\Http\Controllers;

use App\owners;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use Auth;
class OwnersController extends Controller
{

   public function index()
   {
    //
   }

    public function login(Request $request){
        if(auth('owner')->attempt(['email' => request('email'), 'password' => request('password')]))
        {
        $owners = Auth::guard('owner')->owners();
        return response()->json([
            'message' => 'Login Successfull',
            'status' => 'success',
            'user' => $owners
        ]);
        }else{
        return response()->json([
            'message' => 'Login Failed...Check Details...',
            'status' => 'failed',
            'error' => 'true'
        ]);
        }
    }

   public function create()
   {

   }

   public function store(Request $request)
   {

    $this->validate(request(),[
        'name' => ['required', 'string', 'max:255'],
        'email' => ['required', 'string', 'email', 'max:255', 'unique:owners'],
        'password' => ['required', 'string', 'min:8'],
    ]);

    $owners = new owners();
    $owners->name = $request->name;
    $owners->email = $request->email;
    $owners->one_signal_id = '000';
    $owners->phone = $request->phone;
    $owners->password = Hash::make($request->password);
    $owners->on_duty = 0;

    // return $owners;

    if($owners->save()){
        return response()->json([
            'status' => 'success',
            'message' => 'Successfully Registered...'
            ]);
        }else{
            return response()->json([
                'status' => 'failed',
                'message' => 'Failed to Register...'
            ]);
        }
    }

    public function show(owners $owners)
    {
    //
    }


    public function edit(owners $owners)
    {
    //
    }


    public function update(Request $request, owners $owners)
    {
    //
    }

    public function destroy(owners $owners)
    {
    //
    }
}

我得到的错误:

  

BadMethodCallException:方法照亮\ Auth \ SessionGuard :: owners   不存在。

1 个答案:

答案 0 :(得分:0)

更改

auth('owner')->attempt(['email' => request('email'), 'password' => request('password')]) 

Auth::guard('owner')->attempt(['email' => request('email'), 'password' => request('password')])