راکت
حل شده

نحوه استفاده از Sweet Alert به صورت session در لاراول

8 پاسخ

درود بر مهندسین گرامی بنده یک مشکل دارم اونم اینکه وقتی از sweet alert استفاده می کنم وقتی دمکه برگشت میزم باز هم پیام رو بهم نمایش بده و این چیزی نیست که من می خوام.!
من می خوام فقط یک بار بهم نشون بدم در واقع کی خوام از session->flash استفاده کنم اما واقعا نمی دونم چطوری.؟ ممنون میشم راهنماییم کنید.سپاس
اینم کد کنترلر که بعد ثبت دسته بندی آلرت نشون میده.

 public function store(Request $request)
    {
        if ($request->parent){
            $request->validate([
                'parent'=>'exists:categories,id'
            ]);
        }
        $request->validate([
            'name'=>['required','min:2']
        ]);
        Category::create([
            'name'=>$request->name,
            'parent'=>$request->parent ?? 0
        ]);
        alert()->success('دسته بندی شما با موفقیت ثبت شد')->persistent('OK');
        return redirect(route('admin.categories.index'));
    }
ثبت پرسش جدید

پاسخ‌ها

8
رضا جهانگیر
رضا جهانگیر
@rezajahangir

تخصص: Full-Stack Developer

بهترین پاسخ

داخل کنترلر بعد از اینکه پیامو نشون دادی ، دستور زیر رو بنویس:

$request->session()->flush();

موفق باشید.

ali254
ali254
@ali254

سلام ، خب باید در فایل بلید ، بعد از اینکه پیام رو به کاربر نشون دادید ، session رو destroy کنید

علیرضا
علیرضا
@alirezamoghadam3180

تخصص: در حال یادگیری لاراول

@ali254 سپاس میشه مثال بزنید نمی دونم باید چه کنم و بعد اینکه داخل کنترلر چه تغییر باید بدم؟

شاید پاسخ شما همین‌جا باشد

رضا جهانگیر
رضا جهانگیر
@rezajahangir

تخصص: Full-Stack Developer

سلام به شما دوست عزیز.
کد بلید مربوطه را قرار بدین.

میلاد خسروی
میلاد خسروی
@milwad

تخصص: برنامه نویس بامزه

سلام خسته نباشید
ببین این مشکل از سمتی هست که وقتی عملیات store کردن به مشکل میخوره و در زمانی که عملیات تموم میشه و با استفاده از ایکون برگشت گوگل میزنه دوباره میره و alert رو نمایش میده
ببین این کار رو میتونی هندل کنی اما در کل اینو بدون که اگه دوبار alert نمایش بده یعنی دوبار عملیات create انجام شده

علیرضا
علیرضا
@alirezamoghadam3180

تخصص: در حال یادگیری لاراول

@rezajahangir درود بر آ قا رضا گرامی
داخل کد بلید طبق مستندات پکیج داخل head این تگ قرار میدم

 <script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>

و داخل body هم این کد

@include('sweet::alert')
علیرضا
علیرضا
@alirezamoghadam3180

تخصص: در حال یادگیری لاراول

@rezajahangir مهندس یعنی فقط یه خط کد بزاریم؟ هیچ کار دیگه ای لازم نیست چه تو کنترار و چ تو بلید؟

رضا جهانگیر
رضا جهانگیر
@rezajahangir

تخصص: Full-Stack Developer

بله همینو اضافه کنید کافیه.
مگه مشکلتون هنوز برطرف نشده؟

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام