ما هو Laravel

 


 ببساطة , لارافل Laravel: هو اطار عمل خاص ب لغة php سيجعلك تقع حرفياً في حب هذه اللغة حتى وان كنت مصمم في الاساس , يقدم لارافل بيئة عمل متكاملة لكل ما تحتاجه او قد تحتاجه في اي فترة مستقبلية من حياتك المهنية , لارافل Laravel مبني على طريقة MVC الشهيرة التي تفصل ال Model عن View عن Controller , مما يوفر لك بيئة عمل سلسة وسهلة , وربما لحد الآن لم تستطع استيعاب ماهية لارافل Laravel تماماً , لا داع للقلق فالسطور القادمة كفيلة بمساعدتك للدخول الى بداية مشوارك في تعلم لارفل Laravel.


سنقدم في هذه المقالة المطولة تفاصيل كثيرة عن اطار العمل الكبير هذا , لذلك , نأمل عند انتهائك من قراءة هذه المقال ستجد نفسك على دراية واسعة بلارافل وستجد الطريق بدأ أمامك للبحث عن دورات تعليمية.


تقدم لارافل مجموعة غنية من الوظائف التي تتضمن الميزات الأساسية لأطر PHP مثلCodeIgniter  و Yii ولغات البرمجة الأخرى مثلRuby on Rail، وتحتوي لارافل على مجموعة غنية جدًا من الميزات التي تزيد من سرعة تطوير الويب.


إذا كنت معتادًا على الكتابة بلغة PHP، فإن لارافل ستجعل مهمتك أسهل بكثير، فهي توفر الكثير من الوقت إذا كنت تخطط لتطوير موقع ويب من البداية. علاوة على ذلك، فإن موقع الويب المبني بلارافل آمن ويمنع العديد من هجمات الويب.


كما أنه تمتاز لارافل بسرعتها الشديدة وسهولتها، ولكنها عكس جانغو مثلا تستخدم أكثر في تطوير المشاريع الصغيرة لأنها لا تدعم التوسع الشديد (Scalability)، فإذا كنت تنوي تطوير مشروع صغير فلارافل حل رائع، بل أفضل من جانغو بكثير لأن فلسفة جانغو مبنية على تطوير المواقع العملاقة.


ما هي المشاريع التي يمكنك القيام بها عن طريق لارافل؟


تأتي الشركات التي تستخدم لارافل لتطبيقات الويب الخاصة بها من صناعات مختلفة مثل تكنولوجيا المعلومات، التمويل، السفر، الترفيه، البيع بالتجزئة، وغيرها. باستخدام هذا الإطار، يمكن بناء الاتي:

- صفحات الويب الثابتة والديناميكية

- تطبيقات الصفحة الواحدة (SPA) والتطبيقات متعددة الصفحات  (MPAs)

- مواقع التجارة الإلكترونية على شبكة الإنترنت

- تطبيقات على مستوى المؤسسة

- المنتديات وبوابات الوظائف والأخبار وغيرها

- أنظمة إدارة المحتوى (CMS)

- مواقع التواصل الاجتماعي

- تطبيقات الويب المستندة إلى SaaS – Software as a Service

- تطبيقات الويب لخدمات عرض الفيديوهات والبث

- تطبيقات الويب للتعليم الإلكتروني

- أنظمة إدارة الويب القائمة على تداول الأسهم

- تطبيقات الويب ذات المكافآت وميزات التعرف

- تطبيقات مراقبة أداء مواقع الويب ذاتية الاستضافة 



الخطوات الأساسية لإنشاء موقع بي Laravel:

1. تثبيت Laravel: يمكن تثبيت Laravel باستخدام مدير حزم Composer. يمكنك تنزيله وتثبيته على جهاز الكمبيوتر الخاص بك باستخدام الأوامر التالية في سطر الأوامر:

```

composer global require laravel/installer

laravel new myapp

```


2. إنشاء قاعدة بيانات: يجب إنشاء قاعدة بيانات MySQL جديدة لتخزين المنتجات والمستخدمين. يمكن إنشاء قاعدة بيانات جديدة باستخدام لوحة التحكم في قاعدة البيانات أو باستخدام الأوامر التالية في سطر الأوامر:

```

mysql -u root -p

CREATE DATABASE mydatabase;

```


3. تحديد المتغيرات البيئية: يجب تحديد المتغيرات البيئية في ملف .env لتحديد اسم قاعدة البيانات واسم المستخدم وكلمة المرور. يمكنك نسخ ملف .env.example إلى .env وتحديد المتغيرات البيئية في الملف الجديد.


4. إنشاء نموذج المنتج: يجب إنشاء نموذج للمنتج يتضمن الحقول اللازمة لتخزين المعلومات الخاصة بالمنتج مثل اسم المنتج والسعر والوصف.


5. إنشاء جدول قاعدة البيانات: يجب إنشاء جدول في قاعدة البيانات لتخزين المنتجات باستخدام الأمر التالي:

```

php artisan make:migration create_products_table

```


6. إنشاء ملف التحكم: يجب إنشاء ملف تحكم لإدارة عمليات المنتجات مثل إنشاء منتج جديد وعرض المنتجات المخزنة. يمكن إنشاء ملف تحكم جديد باستخدام الأمر التالي:

```

php artisan make:controller ProductController

```


7. تعريف المسارات: يجب تعريف المسارات في ملف التوجيه routes/web.php. يمكن تعريف مسار لعرض صفحة البداية ومسار آخر لإنشاء منتج جديد ومسار آخر لعرض المنتجات الموجودة.


8. إنشاء صفحات الويب: يجب إنشاء صفحات الويب اللازمة لعرض المنتجات وإنشاء منتج جديد. يمكن استخدام ملفات العرض المصممة سابقًا أو إنشاء ملفات عرض جديدة باستخدام لغات الويب الأساسية مثل HTML وCSS.


9. التحقق من العملية: يجب التحقق من عملية الموقع عن طريق تشغيل الموقع على خادم محلي باستخدام الأمر التالي:

```

php artisan serve

```


بعد إنشاء ملفات التحكم والعرض، يجب ربطها معًا في ملفات التوجيه والموديلات. يجب أيضًا ترتيب الملفات والمجلدات بطريقة منظمة.


والآن، سأقدم لك مثالًا على كيفية إنشاء صفحة لعرض المنتجات باستخدام لارافيل وقاعدة بيانات MySQL.


أولاً، يجب إنشاء نموذج المنتج Product.php في مجلد app/Models:

```

<?php


namespace App\Models;


use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;


class Product extends Model

{

    use HasFactory;


    protected $fillable = [

        'name',

        'description',

        'price',

    ];

}

```


ثم، يجب إنشاء جدول لتخزين المنتجات باستخدام الأمر التالي:

```

php artisan make:migration create_products_table --create=products

```


ثم، يجب تحديد المتغيرات البيئية في ملف .env لتحديد اسم قاعدة البيانات واسم المستخدم وكلمة المرور.


ثم، يجب إنشاء ملف تحكم ProductController.php في مجلد app/Http/Controllers:

```

<?php


namespace App\Http\Controllers;


use App\Models\Product;

use Illuminate\Http\Request;


class ProductController extends Controller

{

    public function index()

    {

        $products = Product::all();


        return view('products.index', compact('products'));

    }

}

```


ثم، يجب تعريف المسارات في ملف التوجيه routes/web.php:

```

<?php


use App\Http\Controllers\ProductController;


Route::get('/', [ProductController::class, 'index']);

```


وأخيرًا، يجب إنشاء ملف العرض index.blade.php في مجلد resources/views/products:

```

<!DOCTYPE html>

<html>

<head>

    <title>Products List</title>

</head>

<body>

    <h1>Products List</h1>


    <table>

        <thead>

            <tr>

                <th>Name</th>

                <th>Description</th>

                <th>Price</th>

            </tr>

        </thead>

        <tbody>

            @foreach ($products as $product)

            <tr>

                <td>{{ $product->name }}</td>

                <td>{{ $product->description }}</td>

                <td>{{ $product->price }}</td>

            </tr>

            @endforeach

        </tbody>

    </table>

</body>

</html>

```


هذا هو مثال عن كيفية إنشاء صفحة لعرض المنتجات باستخدام لارافيل وقاعدة بيانات MySQL. يمكنك استخدام نفس الطريقة لإنشاء صفحات أخرى لإنشاء منتج جديد وتعديل المنتجات الموجودة.

إرسال تعليق

أحدث أقدم

نموذج الاتصال