في هذا الفصل من رحلتنا في Laravel (تذكر أنني أتعلم أثناء كتابتي لهذه المقالات، لذا ستكون هذه واحدة من أكثر سلاسل البرامج التعليمية واقعية التي يمكنك العثور عليها!)، سنتعمق في مشروع Laravel الخاص بنا. سوف نستكشف هيكل المشروع، ونتعرف على عمليات الترحيل، ونفصل بنية MVC بأبسط طريقة ممكنة.
استكشاف هيكل مشروعنا ️
إعداد قاعدة بيانات والتعرف على الهجرات ?️
فهم MVC وإنشاء بعض عناصر MVC ?
عند إطلاق VSCode لأول مرة في مشروع Laravel الذي تم إنشاؤه حديثًا، قد تجد بنية الدليل مخيفة بعض الشيء. فيما يلي نظرة عامة سريعة على ما يفعله كل دليل رئيسي:
أخبار جيدة: لست بحاجة إلى معرفة كل شيء الآن. احتفظ بورقة الغش هذه في متناول يديك!
أخبار سيئة: ستحتاج إلى التعرف على هذه الأمور مع تقدم السلسلة. سأضيف "نقاط التفتيش المعرفية" لتذكيرك بأغراضها.
دعونا نتذوق Laravel! افتح المحطة الطرفية الخاصة بك واكتب:
php artisan serve
ثم انتقل إلى متصفحك وقم بزيارة localhost:8000. يجب أن ترى شيئًا كهذا:
هام: تأكد من تشغيل الخادم وقاعدة البيانات (في حالة استخدام XAMPP، كما هو موضح في مقالتي السابقة).
إذا كنت معتادًا على جافا سكريبت، ففكر في خدمة php artisan على أنها مشابهة لـ npm run dev.
Artisan هي أداة سطر أوامر قوية تأتي مع Laravel، مما يجعل المهام المختلفة سهلة وسريعة. يبدأ أمر الخدمة خادم التطوير المحلي. سنستخدم Artisan أكثر مع تقدمنا، لذا لا تقلق كثيرًا بشأن ذلك الآن.
يعد تطبيق الويب في الأساس غلافًا لقاعدة البيانات. يدعم Laravel قواعد البيانات المختلفة:
لست بحاجة إلى تكوينه؛ إنها قاعدة البيانات الافتراضية.
قم بتحرير ملف .env الخاص بك لإلغاء التعليق على تكوين MySQL:
تكوين SQLite
تكوين MySQL
يشبه ملف .env لوحة التبديل للتبديل بين تشغيل وإيقاف التكوينات.
قبل التعمق في MVC في المقالات المستقبلية، دعنا نلقي نظرة عامة سريعة مع بعض الأمثلة للأطفال.
MVC يرمز إلى Model-View-Controller. إنه نمط تصميم يفصل بين الاهتمامات في تطبيقك:
إليك نموذج الترحيب لتخزين الرسائل:
// app/Models/Greeting.php namespace App\Models; use Illuminate\Database\Eloquent\Model; class Greeting extends Model { protected $table = 'greetings'; protected $fillable = ['message']; }
يعرض العرض رسالة الترحيب:
Greeting {{ $message }}
تقوم وحدة التحكم بإحضار رسالة الترحيب وتمريرها إلى العرض:
// app/Http/Controllers/GreetingController.php namespace App\Http\Controllers; use App\Models\Greeting; use Illuminate\Http\Request; class GreetingController extends Controller { public function show() { $greeting = Greeting::first(); return view('greeting', ['message' => $greeting->message]); } }
في هذا الإعداد:
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3