کافیست در app/config/database مقدار strict رو برابر با false بگذارید.
برای جستو می توانید از Scout در لاراول استفاده کنید. اسکات یک میان برنامه است و برای کارکرد به یک موتور نیاز دارد. به صورت پیشفرض از Algolia استفاده می کند. ولی چون الگولیا به صورت اوت سورس است و شاید شما هم مثل من خوشتان نیاید که از منابع خارج از سرور استفاده کنید می توانید به راحتی بجای آن از موتورهای مختلف دیگری استفاده کنید. پیشنهاد میکنم TNTSearch رو امتحان کنید. این هم راهنمای استفاده ی کاملش.
تقریبا همونطور که از اسمش بر میاد قراره کمک های زیادی به ما بکنه. هلپر ها رو خودتون می تونید هرجا که خواستید بسازید فقط بعدش یادتون باشه که توی Composer.json معرفیشون کنید. به عنوان مثال می تونید به جای استفاده از Auth::user->username در لاراول یه هلپر درست کنید و توی تمام ویو هاتون از User()->username استفاده کنید.
"autoload": { "files" : ["app/Helpers/helper.php"] },
اینم یه نمونه از کاربردهای هلپر برای ساده کردن معرفی کاربر همراه با یک جدول رابطه ای
function User(){ // Summerise User Informaion Variables // Example : // Auth::user()->user_profiles->firstname // In User_profiles table // ==> User->name; // Show Firstname Lastname or Username if empty names // or Users Tables // ==> User->users->id $User_info = Auth::user()->profile; if (empty($User_info->firstname) or empty($User_info->lastname)){ $User_info->name = Auth::user()->username; }else{ $User_info->name = $User_info->firstname.' '.$User_info->lastname; } return $User_info; }
برای اینکه بین دو تا جدول یه رابطه درست برقرار بشه گاهی وقتها لازمه بزرگترها دخالت کنند. به عنوان مثال بین دو جدول Users و Users_profile که رابطه یک به یک بینشون برقراره فیلد مشترک Users.id و Users_profile.user_id اعه. برای اینکه توی الوکوئنت درست بهش حالی کنیم چی به چیه از این دستور استفاده می کنیم که المان اول اسم الوکوئنت جدول مرتبطه، المان دوم اسم پرایمر کی و المان سوم اسم کی در جدول مادره :
public function profile() { return $this->hasOne('App\User_profile','user_id', 'id'); }
درباره این سایت