برچسب: لاراول 5.4

  • خطای migrate لاراول ۵٫۴

    همونطور که میدونید لاراول ۵٫۴ مدتیه که منتشر شده. توی این نسخه، لاراول توی کاراکتر ست پیشفرضش یسری تغییری داده و کاراکتر ست فعلی اون utf8mb4 هست که قابلیت پشتیبانی از ایموجی ها رو هم داره.  خطایی که هنگام اجرایphp artisan migrate  توی MySQL  زیر  ۵٫۷٫۷ باهاش مواجه مشید یه چیزی مثل خطای زیر هست :

    [Illuminate\Database\QueryException]
    SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table users add unique users_email_unique(email))
    
    [PDOException]
    SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

    برای حل این مشکل توی فایل AppServiceProvider.php  طول پشفرض رشته رو تغییر بدید…

    use Illuminate\Support\Facades\Schema;
    
    public function boot()
    {
        Schema::defaultStringLength(191);
    }

    الان دیگه نباید مشکلی وجود داشته باشه… موفق باشید

     

  • لاراول ۵٫۴ با قابلیت جدید Automatic Facade

    حتما با فساد ها در لاراول آشنا هستید… با قابلیت جدید لاراول در نسخه ۵٫۴ شما میتونید توی هوا از یه کلاس شبیه یه فساد استفاده کنید… یه کلاس مثل کلاس زیر تعریف کنید :

    namespace App;
    
    class Zonda 
    {
        public function zurf()
        {
            return ‘Zurfing’;
        }
    }

    و بعد توی route و یا کنترلرتون به صورت زیر عمل کنید :

    use Facades\ {
        App\Zonda
    };
    
    Route::get('/', function () {
        return Zonda::zurf();
    });

    به کجا داریم میریم ما؟؟؟ :دی