Rumah  >  Soal Jawab  >  teks badan

Dalam Laravel, bagaimana untuk melaksanakan pemacu pangkalan data dan pengesahan pembekal tanpa menggunakan cara yang elegan

<p>Pemandu yang disokong oleh Laravel ialah "<strong>pangkalan data</strong>" atau "<strong>fasih</strong>" Dalam lalai <strong>config/auth.php</strong> kita dapat melihat bahawa ia sentiasa menyatakan bahawa pemandu adalah fasih. </p> <pre class="brush:php;toolbar:false;">``` /* |------------------------------------------------ ------------------------ | |------------------------------------------------ ------------------------ | |. Semua pemacu pengesahan mempunyai pembekal pengguna. Ini mentakrifkan bagaimana data pengguna sebenarnya diambil daripada pangkalan data atau mekanisme storan lain. | |. Jika anda mempunyai berbilang jadual atau model pengguna, anda boleh mengkonfigurasi berbilang sumber yang mewakili setiap model/jadual. Sumber-sumber ini kemudiannya boleh diberikan kepada mana-mana perlindungan pengesahan tambahan yang anda tentukan. | |. Disokong: "pangkalan data", "fasih" | */ 'penyedia' => 'pengguna' => 'pemandu' => 'faham', 'model' => AppModelsUsers::class, ], // 'pengguna' => // 'driver' => 'database', // 'jadual' => 'pengguna', // ], ], ```</pre> <p>Kemudian kami mempunyai skema <strong>Pengguna</strong> yang dikaitkan dengan pengguna jadual untuk menyemak pengesahan. Oleh itu, kita boleh menggunakan beberapa kaedah <strong>auth</strong>: <strong>auth::check(), auth::atemp(), auth:login(),...</strong> ; Jika saya tidak menggunakan Model AppModelsUsers::class, tetapi menggunakan <strong>'driver' => 'database'</strong>, maka bagaimana saya boleh menggunakan beberapa fungsi <strong>auth</strong> kebenaran Kain bulu? </p>
P粉043566314P粉043566314441 hari yang lalu389

membalas semua(1)saya akan balas

  • P粉781235689

    P粉7812356892023-08-29 00:01:31

    Hanya tukar pemacu kepada pangkalan data, anda boleh dengan mudah mengulas bahagian fasih dan menyahkomen bahagian pangkalan data pemacu dan anda boleh menggunakan auth() seperti sebelum ini. Fungsi pengesahan Laravel ialah pasang dan main.

    'users' => [
        'driver' => 'database',
        'table' => 'users', //或者您用于用户的任何表。
    ]

    Anda boleh mereka bentuk kaedah log Masuk anda dalam AuthController seperti ini:

    public function signIn(Request $request)
        {
            $request->validate([
                'email' => 'required|email',
                'password' => 'required'
            ]);
    
            $credentials = $request->only('email', 'password');
    
            if (Auth::attempt($credentials)) {
                return redirect('/');
            }
    
            return redirect('login')->withErrors('登录详细信息无效');
        }

    Ia akan berfungsi dalam pemacu yang fasih dan pangkalan data.

    balas
    0
  • Batalbalas