簡體   English   中英

在 Laravel 8 微風中注冊后如何停止自動登錄

[英]How to stop auto login after registration in Laravel 8 breeze

嗨,我對 Laravel 框架還很陌生。 I am trying to create a separate controller replicating the registeredusercontroller.php in laravel breeze to have a function for admin user to be able to add new users. 但是我在自動登錄時遇到了問題,一旦我添加了一個新用戶,它就會自動登錄到新用戶。 我怎樣才能阻止這種情況發生。 我看到帖子說要刪除

$this->guard()->login($user);

但是當我看到 app/Auth/registeredusercontroller.php 時,我看不到那條線。

public function store(Request $request)
{
    $request->validate([
        'name' => 'required|string|max:255',
        'email' => 'required|string|email|max:255|unique:users',
        'password' => 'required|string|confirmed|min:8',
    ]);

    Auth::login($user = User::create([
        'name' => $request->name,
        'email' => $request->email,
        'password' => Hash::make($request->password),
    ]));
    $user->attachRole('user');
    event(new Registered($user));

    return redirect(RouteServiceProvider::HOME);
}

注冊后如何停止自動登錄。

任何幫助是極大的贊賞。

您可以像使用自定義請求處理程序一樣正確地執行此操作。 您需要的參數是名稱,email,密碼。 所以在 app/http/request 上面添加 CreateUserRequest

<?php

namespace App\Http\Requests;

use Illuminate\Http\Request;

class CreateUserRequest extends Request
{

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        return [
            'name' => 'required|string|max:255',
    'email' => 'required|string|email|max:255|unique:users',
    'password' => 'required|string|confirmed|min:8',
        ]; 
    }
}

並進入您的 controller 只需執行此操作;

public function store(CreateUserRequest $request) // add your custom request as a parameter

$user = User::create($request) 

這些代碼使您的代碼結構清晰明了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM