چگونه : یک خصیصه به Model در Laravel اضافه کنیم؟

تبلیغات
کانال تلگرام فتولیا

همانطور که می دانید Model در معماری نرم افزار MVC به رابط برنامه با پایگاه داده گفته می شود و همه ارتباط ها با دیتابیس از طریق مدل انجام میگیره . معمولا مقدار برگشتی مدل بر اساس فیلدهای جدول مربوطه در دیتابیس هست .مثلا فیلدهای ID, Name, Family, Password و … برای جدول کاربر برگشت داده می شوند (ساختار جدول طبق تعریف هر پروژه ممکن است متفاوت باشد) . به فیلدهای جدول که در مدل مربوط به همان جدول تعریف می شوند در لاراول خصیصه یا Attribute گفته میشود.

حالا فرض کنید می خواهید یک خصیصه جدید که در جدول مربوطه وجود ندارد به مدل اضافه کنید مثلا در بالا فیلد نام کاربری در جدول نداریم و می خواهیم در Model مربوط به جدول User آن را بسازیم و به کنترلر برگشت دهیم . یا فرض کنید می خواهید Slug یا همان آدرس SEO مقاله را در مدل سرهم کنید و برگشت دهید و …

یک Model معمولی در لاراول معمولا به این شکل است:

اول باید خصیصه ای که می خواهیم اضافه کنیم به لیست خصایص اضافه کنیم:

اضافه کردن کد بالا برای متد های toArray()  و toJson() مدل مهم است. حالا می توانیم یک Accessor برای خصیصه جدید تعریف کنیم:

در همین رابطه :   لاراول 5.4 : رفع مشکل Specified key was too long error

و تمام شد ! به این صورت که دیدید می توانید خصیصه های مختلفی به مدل تان اضافه کنید. فقط دقت کنید که مدل فقط داده ها را برای برنامه شما فراهم می کند و آنها را اجرا نمی کند!

منبع

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

More in Laravel
چک کردن وضعیت وجود یک Record جدول در Laravel

فرض کنید می خواهید وجود یک ایمیل را در جدول کاربران دیتابیس سایت خود بررسی کنید و ببینید وجود دارد...

Close