لإنشاء ميزات الإنشاء والتحديث والحذف في 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 الجلسة لعرض رسائل النجاح أو الخطأ في طرق العرض.
باتباع هذه الخطوات ، تكون قد نجحت في إنشاء ميزات الإنشاء والتحديث والحذف في Laravel.