Yeni bir projeye başladım fakat yolun başında hemen bir yerde takıldım. Çok basit bir sorun ama bir türlü gideremedim. index viewinin içinde bir success componentim var ve duruma göre farklı success mesajları göstermek istiyorum. index routeunda istediğim mesaj geliyor. daha sonra delete işlemi yapıyorum. delete işlemi sonrasında aşağıdaki UserController dosyasında da görüldüğü gibi destroy methodu içerisinde success mesajını güncelleyip index route'a yönlendirme işlemi gerçekleşiyor. Herşey doğru işliyor fakat success mesajı ne yaptıysam güncellenmiyor. Hatam nereden kaynaklı ?
Not: JavaScript ile kolayaca yaparım fakat ben bu şekilde ilerlemek istiyorum. Şimdiden teşekkürler.
<?php
namespace App\Http\Controllers;
use App\Models\User;
use Illuminate\Http\Request;
class UserController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$users = User::latest()->paginate(10);
$success = 'All Users Loaded!';
return view('administration.users.index', compact('users', 'success'));
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('administration.users.create');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$request->validate([
'name' => 'required',
'email' => 'required',
'password' => 'required',
'role' => 'required'
]);
User::create($request->all());
return redirect()->route('administration.users.index')
->with('success', 'User created successfully.');
}
/**
* Display the specified resource.
*
* @param \App\Models\User $user
* @return \Illuminate\Http\Response
*/
public function show(User $user)
{
return view('administration.users.show', compact('user'));
}
/**
* Show the form for editing the specified resource.
*
* @param \App\Models\User $user
* @return \Illuminate\Http\Response
*/
public function edit(User $user)
{
$user = User::findOrFail($user->id);
return view('administration.users.edit', compact('user'));
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param \App\Models\User $user
* @return \Illuminate\Http\Response
*/
public function update(Request $request, User $user)
{
$request->validate([
'name' => 'required',
'email' => 'required',
'password' => 'required',
'role' => 'required'
]);
$user->update($request->all());
return redirect()->route('administration.users.index')
->with('success', 'User updated successfully!');
}
/**
* Remove the specified resource from storage.
*
* @param \App\Models\User $user
* @return \Illuminate\Http\Response
*/
public function destroy(User $user)
{
User::where('id', $user->id)->firstOrFail()->delete();
return redirect()->route('administration.users.index')
->with('success', 'User deleted successfully!');
}
}