首页 > 解决方案 > 如何在 Laravel 中保存数据后删除会话

问题描述

我在我的控制器中创建一个会话,如下所示:

Session::put('myoffer', $book->id);

在我的另一个控制器中,我将数据保存到一个表中,它看起来像这样:

public function store(Request $request)
{
    //
    $data = [
        'user_id' => Auth::id(),
        'book_id' => $request->book_id,
        'offer_price' => $request->offer_price,
        'offer_message' => $request->offer_message
    ];
    Book::Create($data);
    return redirect()->route('buyer.dashboard');
}

数据保存在报价表中后,如何删除会话?

标签: phplaravelsession

解决方案


你可以用这个

session()->forget('myoffer');

删除所有会话使用

session()->flush();

您更新的代码是

public function store(Request $request)
{
    //
    $data = [
        'user_id' => Auth::id(),
        'book_id' => $request->book_id,
        'offer_price' => $request->offer_price,
        'offer_message' => $request->offer_message
    ];
    Book::Create($data);
session()->forget('myoffer');
    return redirect()->route('buyer.dashboard');
}

推荐阅读