Pengawal Laravel tidak boleh mengembalikan pembolehubah sesi
P粉998100648
P粉998100648 2023-08-13 20:34:28
0
1
611
<p>Saya sedang belajar Laravel dan saya cuba memasukkan mesej kejayaan ke dalam sesi dan menunjukkannya dalam paparan tetapi ia nampaknya tidak berfungsi</p> <p>Ini ialah kod saya dalam bahagian paparan</p> <pre class="brush:php;toolbar:false;"><div class="col-sm-12 col-xl-12"> @jika (sesi()->mempunyai('msg')) <h5> {{ session('msg') }}</h5> @endif</pre> <p>Ini ialah fungsi pengawal yang saya gunakan untuk menambah kandungan baharu dan meletakkan mesej ke dalam sesi</p> <pre class="brush:php;toolbar:false;">kedai fungsi awam(CatalogRequest $request) { $status=$ini->katalog->masukkan([ 'nama' => $permintaan->nama, 'status' => $permintaan->status ]); if($status){ $msg = "Direktori berjaya ditambah"; $color = 'berjaya'; }lain{ $msg = "Gagal menambah direktori"; $color = 'merah'; } session()->put('msg',$msg); return redirect('katalog'); }</pre></p>
P粉998100648
P粉998100648

membalas semua(1)
P粉604848588

Cuba ini

session()->flash('msg', ['text' => $msg, 'color' => $color]);

Dalam templat bilah

<div class="col-sm-12 col-xl-12">
    @if (session()->has('msg'))
        <h5 style="color: {{ session('msg.color') }}">{{session('msg.text') }}</h5>
    @endif
</div>

Dalam kod ini, saya memastikan anda memasukkan import yang betul, menggunakan kaedah yang betul untuk memasukkan data dan menggunakan kaedah flash() dan bukannya kaedah put() untuk menyimpan sementara mesej dalam sesi. Selain itu, warna mesej juga disimpan dalam sesi untuk kawalan yang lebih baik ke atas penggayaan.

Selain itu, anda boleh cuba mengikatnya menggunakan kaedah WITH.

return back()->with('msg', 'Your message');

Anda boleh menggunakan redirect() redirect()->route() dan kaedah lain. Juga, sila baca dokumentasi dengan teliti, anda akan mendapat banyak idea daripadanya.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan