Byg Opret, Opdater og Slet funktioner i Laravel

Laravel Følg disse trin for at opbygge funktionerne til oprettelse, opdatering og sletning i:

Definere Route

Start med at definere route s for at håndtere oprettelse, opdatering og sletning.

Route::get('/users', 'UserController@index')->name('users.index');
Route::get('/users/create', 'UserController@create')->name('users.create');
Route::post('/users', 'UserController@store')->name('users.store');
Route::get('/users/{id}/edit', 'UserController@edit')->name('users.edit');
Route::put('/users/{id}', 'UserController@update')->name('users.update');
Route::delete('/users/{id}', 'UserController@destroy')->name('users.destroy');

I ovenstående eksempel definerer vi route s for at oprette en bruger, gemme en bruger, redigere en bruger, opdatere en bruger og slette en bruger.

 

Definer Controller

Dernæst skal du definere metoderne i for controller at håndtere anmodningerne fra route s.

<?php  
  
namespace App\Http\Controllers;  
  
use App\Models\User;  
use Illuminate\Http\Request;  
  
class UserController extends Controller  
{  
    public function index()  
    {  
        $users = User::all();  
        return view('users.index', compact('users'));  
    }  
  
    public function create()  
    {  
        return view('users.create');  
    }  
  
    public function store(Request $request)  
    {  
        $validatedData = $request->validate([  
            'name' => 'required',  
            'email' => 'required|email',  
        ]);  
  
        $user = User::create($validatedData);  
  
        return redirect()->route('users.index')->with('success', 'User created successfully.');  
    }  
  
    public function edit($id)  
    {  
        $user = User::findOrFail($id);  
        return view('users.edit', compact('user'));  
    }  
  
    public function update(Request $request, $id)  
    {  
        $validatedData = $request->validate([  
            'name' => 'required',  
            'email' => 'required|email',  
        ]);  
  
        $user = User::findOrFail($id);  
        $user->update($validatedData);  
  
        return redirect()->route('users.index')->with('success', 'User updated successfully.');  
    }  
  
    public function destroy($id)  
    {  
        $user = User::findOrFail($id);  
        $user->delete();  
  
        return redirect()->route('users.index')->with('success', 'User deleted successfully.');  
    }  
}  

I hver metode kan du udføre de tilsvarende handlinger, såsom at vise en formular, gemme nye data, opdatere eksisterende data og slette data.

 

Opret bruger Interface

Opret brugeren interface( views) for at vise formularer og se data. For eksempel:

Liste( views/users/index.blade.php):

@foreach($users as $user)  
    <p>{{ $user->name }}- {{ $user->email }}</p>  
@endforeach  

Rediger formular( views/users/create.blade.php):

<form method="POST" action="{{ route('users.store') }}">  
    @csrf  
    <input type="text" name="name" placeholder="Name">  
    <input type="email" name="email" placeholder="Email">  
    <button type="submit">Create User</button>  
</form>  

Rediger formular( views/users/edit.blade.php):

<form method="POST" action="{{ route('users.update', $user->id) }}">  
    @csrf  
    @method('PUT')  
    <input type="text" name="name" value="{{ $user->name }}">  
    <input type="email" name="email" value="{{ $user->email }}">  
    <button type="submit">Update User</button>  
</form>  

 

Håndtere data

I lager- og opdateringsmetoderne i controller, kan du bruge Eloquent-metoder til at gemme og opdatere data i databasen.

 

Vis beskeder

Endelig kan du vise succes- eller fejlmeddelelser til brugeren efter at have udført handlingerne for oprettelse, opdatering og sletning.

  • Brug Laravel session til at vise succes- eller fejlmeddelelser i visninger.

 

Ved at følge disse trin har du opbygget funktionerne til oprettelse, opdatering og sletning i Laravel.