تعرف على المزايا الجديدة والتغيرات في لارافل ٨

تعرف على بعض المزايا الجديدة في لارافل ٨

Omarمنذ 4 سنوات

تعرف على المزايا الجديدة والتغيرات في لارافيل ٨

في 8/9/2020 تم إصدار نسخة 8 من لارافل وهو يعتبر إصدار رئيسي، وتم إضافة وتطوير بعض المزايا أو تمت بعض التغييرات في الإطار، مع ملاحظة أن نسخة LTS مازالت هي النسخة 6

فحبيت اليوم أتكلم لكم عن بعض هذه المزايا والتغيرات الجذرية التي حدثت في لارافل 8

<!--   ---------------------   -->

لاستخدام مميزات لارافل 8 تحتاج لتحديث laravel installer عن طريق الأمر التالي

composer global require laravel/installer

ومن أهم الإضافات التي تمت هي 

# Laravel Jetstream

تصميم جديد للواجهات وجدا جميل .. بالاضافة إلى dashboard فيه تطورت بشكل كبير فتستطيع تغيير الصورة وتحديث الاسم والايميل وكلمة السر والصورة الشخصية وإضافة المصادقة الثنائية وأيضا جلسات المتصفح اللي تظهر لك الأجهزة اللي مسجل دخول منها وتستطيع تسجيل الخروج منها بضغطة زر وغيرها من المزايا، ومن أهم الامور في Jetstream أنك تستطيع التحكم بكل خاصية على حدة من ملف fortify.php وملف jetstream.php  فتستطيع مثلا إلغاء التسجيل أو الصورة الشخصية أو أي ميزة أخرى.

ولإنشاء مشروع مع Jetstream تكتب هذه التعليمة بعد تحديث laravel installer لانه ماراح يتعرف عليها في الاصدارات القديمة

laravel new project-name --jet

ومن الخيارات اللي راح يعطيك اياها اختر Livewire وبالنسبة لـ  team management اختر نعم أو لا ع حسب احتياجك.

وبعدها تنفذ migrate 

php artisan migrate

ولمزيد من المعلومات عن Jetstream تقدر تشوف Documentation هنا 

# Routing Namespace Updates

من أهم التغيرات في لارافل 8 هو syntax للـ Route فسابقاً إذا أردت تعرف Route تكتب 

Route::get('/users', 'UserController@index');

أما في لارافل 8 تغير إلى 

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

أما إذا كنت تفضل syntax القديم فتستطيع ذلك باتباع التعليمات التالية

1. تفتح ملف RouteServiceProvider الموجود في مجلد Providers وتعدل تعليمة 

protected $namespace = null;

إلى 

protected $namespace = 'App\Http\Controllers';

2. تضيف تعليمة 

->namespace($this->namespace)

في دالة boot بعد تعليمتي 

middleware(web)
و
middleware(api)

لتصبح كالتالي

public function boot()
{
       $this->configureRateLimiting();

       $this->routes(function () {
            Route::middleware('web')
                ->namespace($this->namespace)
                ->group(base_path('routes/web.php'));

            Route::prefix('api')
                ->middleware('api')
                ->namespace($this->namespace)
                ->group(base_path('routes/api.php'));
        });
}

#Models Directory

سابقاً كان أي model ننشئه يخزن في مجلد app مباشرة أما في لارافل 8 يتم تخزينه داخل مجلد باسم models 

# Improved Maintenance Mode 

التعليمة السابقة كانت تحجب الجميع ويتم استئثناهم عن طريق قائمة IP المسموح لهم بالدخول للموقع.

php artisan down

الان تم تطوير وضع الصيانة، فتقدر تضع الموقع في وضع الصيانة وتعطي الصلاحية للمطورين بدخوله من خلال كلمة "token" تُنشئها وتعطيها للمبرمجين، الأمر يتم كالتالي

php artisan down --secret="omar-access"

ويستطيع المطور الدخول للموقع عن طريق كتابته كالتالي

www.example.com/omar-access

<!--   ---------------------   -->

وهناك المزيدمن التغييرات والمزايا في لارافل 8 تستطيع الاطلاع عليها كاملة في Documentation الرسمي لهم هنا 

وفي نهاية هذا المقال أرجو أنك استفدت من هذا المقال .. وتكون من كبار المبرمجين في عالمنا العربي مستقبلاً .. شكراً لوقتك

كلمات دليلية: laravel php web
2
إعجاب
2929
مشاهدات
2
مشاركة
1
متابع

التعليقات (0)

لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !