دورة laravel للمبتدئين الدرس الثاني


فهاد الدرس الثاني من دورة laravel للمبتدئين غادي نكملوا الدورة ديالنا فغادي نشوفوا كيفاش نزيدو les fonctions ل controller لي زدنا منبعد غادي نشوفوا كيفاش نزيدو des paramétres ل les fonctions ديالنا وغادي نخدموا ب les routes باش ن executer كل fonction زدتها.


1- إضافة fonction index ل laravel controller

فباش نزيد fonction index ل controller PostsController لي هي اول حاجة كت exécuta فل controller كنزيدها بطريقة عادية باستخدام :

public function index

فهنا زدناها فداخلها فقط كنعرض رسالة باسم الصفحة لي هي index.

الكود لي زدنا ف PostsController هو :

                                //PostsController

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class PostsController extends Controller
{
    //
    public function index(){
        echo 'index page';
    }
}
                            

2- عرض الرسالة فالمتصفح

فباش نعرض الرسالة لي زدنا فل fonction index ضروري مخصني نزيد route حيت هو لي كيمكني من هادشي.

فغادي نمشي  ل web.php غادي نزيد route لي عطيناه posts/ ولي غادي ينفذ la fonction index ديال ل controller PostsController ولي حددناها ب @.

فهنا مكنزيدش function حيت مكن retourner والو عكس / route لي كيرجع la page welcome.

فيلا مشيتي ل http://localhost:8000/posts غادي تلقى النتيجة :



الكود لي زدنا ف web.php هو :

                                //web.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class PostsController extends Controller
{
    //
    public function index(){
        echo 'index page';
    }
}
                            

3- اضافة fonction ل laravel controller ب les paramétres

فمنبعد مشفنا كيفاش زدنا fonction index دبا غادي نزيدو fonction سميناها edit لي غادي تاخد id ديال post مثلا بغينا نديرو عليه تعديلات.

فل fonction كتعرض رسالة مصحوبة ب ل id ديال ل post لي غادي ندير عليه تعديلات.

الكود لي زدنا ف PostsController هو :

                                //PostsController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class PostsController extends Controller
{
    //
    public function index(){
        echo 'index page';
    }
    public function edit($id){
        echo 'post à modifier : '.$id;
    }
}
                            

4- عرض رسالة التعديل فالمتصفح

فباش نعرض الرسالة لي زدنا فل fonction edit مع ل id ضروري مخصني نزيد route حيت هو لي كيمكني من هادشي.

فغادي نمشي  ل web.php غادي نزيد route لي عطيناه :

edit/{id}/post/

ولي غادي ينفذ la fonction edit ديال ل controller

PostsController ول id كنرسلو بهاد الطريقة {id} هنا عطيناه 1

فيلا مشيتي ل http://localhost:8000/edit/1/post غادي تلقى النتيجة :





الكود لي زدنا ف web.php هو :

                                    //
<?php

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('welcome');
});

Route::get('/posts','PostsController@index');

Route::get('/edit/{id}/post','PostsController@edit');