campaign-off40

آموزش ساخت اپلیکیشن مدیریت وظایف با لاراول : قسمت اول



visibility  
mode_comment   ۰

در مقالات قبلی راه اندازی اولیه یک پروژه با لاراول را آموزش دادیم. در این سری مقالات قصد داریم یک وب اپلیکیشن مدیریت وظیفه یا Task Scheduler را با استفاده از فریمورک محبوب لاراول بسازیم. در این سری از آموزش دوباره راه اندازی لاراول صرف نظر می کنیم و فرض را بر آن می گذاریم که شما توانایی آن را دارید. اما اگر با این موضوع آشنایی ندارید حتما ابتدا مقاله ما با عنوان " آموزش نصب لاراول " را مطالعه کنید.

آموزش ساخت یک برنامه مدیریت وظیفه با لاراول

آموزش لاراول

پس از راه اندازی پروژه با استفاده از دستور php artisan serve سرور را راه اندازی کنید. در صورت درست بودن روند راه اندازی صفحه خوش آمدگویی لاراول را مشاهده خواهید کرد. قرار است یک پروژه مدیریت وظیفه با قابلیت انجام عملیات CRUD بنویسیم. بنابراین به استفاده از دیتابیس احتیاج داریم. برای اتصال به دیتابیس ابتدا باید مشخصات آن را به لاراول معرفی کنیم. برای این کار به فایل .env در پوشه اصلی پروژه بروید و در قسمت مربوط به دیتابیس مشخصات دیتابیس خود را وارد کنید. البته قبل از آن حتما یک دیتابیس با نام دلخواه خود بسازید. ما در اینجا یک دیتابیس به نام scheduler ساخته ایم و این مشخصات را برای اتصال آن با لاراول وارد می کنیم:

قبل از هرچیز باید بدانیم که دقیقا در حال نوشتن چه پروژه ای هستیم. قرار است اپلیکیشنی بنویسیم که وظایف جدید می توانند در آن اضافه شوند. این وظایف می توانند در مواقع نیاز ویرایش یا حذف شوند. وضعیت هر وظیفه با نام status مشخص می شود. status به طور پیشفرض دارای مقدار Undone است که نشان می دهد وظیفه هنوز انجام نشده. اما به طور کلی status می تواند این حالات را بپذیرد:

  • Undone برای وظایفی که انجام نشده اند
  • Done برای وظایفی که انجام شده اند
  • Cancel برای وظایفی که از آن ها صرف نظر شده است
  • Migrated برای وظایفی که به بعد موکول شده اند

بنابراین جدول tasks یا وظایف ما در دیتابیس می تواند شامل این ستون ها باشد:

  • ستون id
  • ستون title برای عنوان وظیفه
  • ستون description برای توضیحات مربوط به وظیفه
  • ستون status برای نشان دادن وضعیت وظیفه

خط فرمان را در پوشه اصلی پروژه باز کرده و این دستور را در آن وارد کنید:

این دستور یک مایگریشن برای ساخت جدول وظایف یا tasks ایجاد می کند. به مسیر database>migrations بروید و مایگریشن مربوط به tasks را باز کنید. کد های متد up() را به شکل زیر تغییر دهید:

در کد بالا id را به صورت یک مقدار BigIncrements در نظر گرفتیم. BigIncrements یک شمارنده id ایجاد می کند که خود به خود با اضافه شدن هر رکورد اضافه می شود. اما در ورژن های قبل از 5.8 لاراول این مقدار را از نوع Increments وارد می کردیم. تفاوت BigIncrements و Increments تنها در این است که اولی اعدادی از نوع BigInteger تولید می کند. این کار باعث می شود در id های با اعداد بزرگ با ارور مواجه نشویم.

ستون status به صورت enum در نظر گرفته شده و مقادیر پیشفرضی که در بالا گفتیم برای آن در نظر گرفته شده است. قبل از اجرای مایگریشن دو مایگریشن مربوط به جداول users و remember_passwords را پاک کنید. چرا که در این پروژه چیزی به عنوان ثبت نام در نظر نگرفته ایم. حال دوباره به سراغ خط فرمان بروید و دستور زیر را وارد کنید:

Php artisan migrate

به دیتابیس خود بروید. همانطور که مشاهده می کنید دو جدول با نام های migrations و tasks در دیتابیس ایجاد شده است.

رفع مشکل حداکثر طول رشته

در صورتی که AppServiceProvider خود را تنظیم نکرده باشید، احتمال دارد بعد از وارد کردن دستور migrate یک ارور دریافت می کنید. برای رفع این مشکل به مسیر App>Providers>AppServiceProvider.php بروید و در متد register() این کد را وارد کنید:

جمع بندی

تا اینجای کار، عملیات مربوط به ایجاد دیتابیس های پروژه مدیریت وظایف را انجام دادیم. در قسمت بعد مدل ها و کنترلر های لازم برای پروژه را خواهیم ساخت. برای ساخت اولین پروژه لاراولی خود تا پایان این مجموعه با ما همراه باشید. در صورتی که با اجرای کدهای بالا مشکلی داشتید آن را با در میان بگذارید تا در بر طرف کردن آن با شما همراه باشیم.

متخصص PHP
اگر دوست داری برنامه نویسی PHP رو حرفه ای یاد بگیری آیا می دانید بیش از ۸۰% وب سایت های موجود در ایران از جمله لیدرهای بازار وب (اسنپ، اسنپ فود، نت برگ، دیجیکالا، الوپیک و ... ) زبان برنامه نویسی PHP را به عنوان زبان اصلی برای پیاده سازی امکانات سمت سرور خود انتخاب کردند! متخصص PHP arrow_back
7Learn Experts
comment دیدگاه کاربران

add_circle ارسال دیدگاه

خوشحال میشیم دیدگاه و یا تجربیات خودتون رو با ما در میون بذارید :