Για να δημιουργήσετε τις δυνατότητες δημιουργίας, ενημέρωσης και διαγραφής στο Laravel, ακολουθήστε αυτά τα βήματα:
Καθορίζω Route
Ξεκινήστε ορίζοντας route s για τη διαχείριση των ενεργειών δημιουργίας, ενημέρωσης και διαγραφής.
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');
Στο παραπάνω παράδειγμα, ορίζουμε route s για τη δημιουργία ενός χρήστη, την αποθήκευση ενός χρήστη, την επεξεργασία ενός χρήστη, την ενημέρωση ενός χρήστη και τη διαγραφή ενός χρήστη.
Ορίστε το Controller
Στη συνέχεια, ορίστε τις μεθόδους στο controller για να χειριστείτε τα αιτήματα από το 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.');
}
}
Σε κάθε μέθοδο, μπορείτε να εκτελέσετε τις αντίστοιχες ενέργειες, όπως εμφάνιση μιας φόρμας, αποθήκευση νέων δεδομένων, ενημέρωση υπαρχόντων δεδομένων και διαγραφή δεδομένων.
Δημιουργία χρήστη Interface
Δημιουργήστε τον χρήστη interface( views
) για να εμφανίσετε φόρμες και να προβάλετε δεδομένα. Για παράδειγμα:
Λίστα( views/users/index.blade.php
):
@foreach($users as $user)
<p>{{ $user->name }}- {{ $user->email }}</p>
@endforeach
Επεξεργασία φόρμας( 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>
Επεξεργασία φόρμας( 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>
Χειριστείτε δεδομένα
Στις μεθόδους αποθήκευσης και ενημέρωσης στο controller, μπορείτε να χρησιμοποιήσετε μεθόδους Eloquent για να αποθηκεύσετε και να ενημερώσετε δεδομένα στη βάση δεδομένων.
Εμφάνιση μηνυμάτων
Τέλος, μπορείτε να εμφανίσετε μηνύματα επιτυχίας ή σφάλματος στον χρήστη μετά την εκτέλεση των ενεργειών δημιουργίας, ενημέρωσης και διαγραφής.
- Χρησιμοποιήστε Laravel το Session για να εμφανίσετε μηνύματα επιτυχίας ή σφάλματος σε προβολές.
Ακολουθώντας αυτά τα βήματα, δημιουργήσατε με επιτυχία τις δυνατότητες δημιουργίας, ενημέρωσης και διαγραφής στο Laravel.