🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۲ Ali Yz
رفع خطای هنگام rollback برای حذف foreign key
جامعه لاراول ایجاد شده در ۰۲ اردیبهشت ۱۴۰۱

با سلام من طبق آموزش پیش رفتم و هنگام rollback با خطای زیر مواجه شدم

6cae-Screenshot (5).png

بعد از جستجوی خطا متوجه شدم برای حذف کلید خارجی، درون متد dropForeign باید با فرمت زیر عمل کنیم

$table->dropForeign('tableName_foreignName_foreign');

پس کدهای اصلی متد down باید به صورت زیر باشد

public function down()
{
    Schema::table('videos', function (Blueprint $table) {
        $table->dropForeign('videos_category_id_foreign');
        $table->dropColumn('category_id');
    });
}

سلام دوست عزیز

ممنون بابت اینکه دانشتون رو در اختیار دوستانتون قرار میدین

موفق باشید ??

محمد گازری ۰۲ اردیبهشت ۱۴۰۱، ۰۷:۵۸

سلام، من فکر میکنم این ارور علت دیگه ای داره. این ارور رو من زمانی باهاش مواجه شدم که به درستی کلید خارجی رو ایجاد نکرده بودم (توی متد Up). چون الان که دارم این رو مینویسم با لاراول نسخه ۱۰ و طبق ویدیو پیش رفتم و مشکلی نداشتم.

public function down(): void
{
    Schema::table('videos', function (Blueprint $table) {
        $table->dropForeign('category_id');
        $table->dropColumn('category_id');
    });
}
Pourya ۰۴ خرداد ۱۴۰۲، ۰۶:۰۳