۷ پکیچ لاراول برای تقویت modelها

ما روزانه به عنوان مهندس نرم افزار طبخ می کنیم ، غذا می خوریم ، فکر می کنیم و می سازیم. چندین بار ، با چالش های جدیدی روبرو شده ایم ، ویژگی های جدیدی که باعث ایجاد تفکر جدی می شود ، مشکلات جدیدی که ذهن ما را دچار پیچیدگی های زیادی میکند..

به عنوان یک توسعه دهنده که از Laravel برای ساختن نرم افزار استفاده می کند ، شما اغلب برای ایجاد روابط بین جداول دیتابیس خود با ایجاد Model ها و Migration ها روبرو هستید. در برخی شرایط ، شما ممکن است قبلاً دقیقاً همین کار را کرده باشید.

به عنوان مثال ، وظیفه دارید یک شبکه اجتماعی یا social network ایجاد کنید. شما باید سیستم کامنت ، سیستم درخواست و پذیرش دوست یا friend request ، سیستم like/favorite و همه این چندین feature را بسازید که ساختار دیتابیس خوبی داشته باشد. .

شما شروع به پرسیدن سؤالهایی از خود می کنید مانند:

     1- چند جدول برای این functionality لازم است؟

    2- چگونه می توانم روابط را map کنم؟

    3- آیا این یک رابطه polymorphic  ، یک به چند ، و یا  چند به چند است؟

    4- چه چیزهای اضافی برای این مدل نیاز دارم؟

    5- چگونه می توانم اکثر logic ها را به مدل ها تغییر دهم؟

 خبرهای خوبی برای شما دارم برخی از افراد قبلاً ویژگی هایی مانند این قبیل را توسعه داده اند و در پکیج های Laravel که برای استفاده سایر توسعه دهندگان قرارداده اند. 

7 پکیجی که می توانید از آن استفاده کنید:

     1-Laravel TeamWork:این یکی از سریعترین و آسان ترین روش ها برای اضافه کردن یک انجمن کاربر / تیم با دعوت به پروژه Laravel 5 شماست.
    2- Laravel likeable : این به شما کمک می کند تا سیستم خود را در پروژه Laravel پیاده کنید.
    3- Laravel Friendable: این به شما در اجرای سیستم Friendable در پروژه Laravel کمک می کند.
    4- Laravel Voteable: در مورد اخبار هکر ، می توانید پست ها را تأیید یا رأی دهید. این به شما در اجرای سیستم رای گیری در پروژه Laravel کمک می کند. 
    5- Laravel Friendship: این یک جایگزین برای Laravel Friendable است. این کمک می کند تا Friendship را در پروژه Laravel خود مدیریت کنید.
   6- Laravel Commentable: این به شما کمک می کند تا یک سیستم کامنت گذاری را در پروژه Laravel خود پیاده کنید.
   7-Laravel Commentable: این یک جایگزین برای موارد ذکر شده در بالا است. همچنین به شما کمک می کند تا چگونگی پیاده سازی سیستم اظهار نظر در پروژه Laravel خود را درک کنید.

نتیجه

لازم نیست در واقع از این بسته ها در پروژه خود استفاده کنید ، اما در صورت انجام این کار می توانید روند ساخت آن برنامه را تسریع کنید. یک کار اصلی که من توصیه می کنم این است که  با مراجعه بهsource code این بسته ها ،نحوه migration ها و سیستم مدل و استفاده از آن را درک کنید.

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

سعید نصیری
سعید نصیری

من برنامه نویس لاراول، PHP و طراح سایت هستم. برنامه نویسی موبایل و تولید اپلیکیشن های موبایل نیز بخش دیگری از توانایی های فردی من هست. تقریبا ده دوازده سالی تجربه مستمر در زمینه طراحی سایت دارم و نزدیک به یک سال هم میشه که در برنامه نویسی موبایل وارد شده ام.