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

چطور می توانم یک ستون به جدولی که از قبل با استفاده از فریموورک لاراول ایجاد شده است اضافه کنم؟

من فایل Migration رو به صورت زیر ویرایش کردم:

<?php

public function up()
{
    Schema::create('users', function ($table) {
        $table->integer("paid");
    });
}

در ترمینال هم دستور php artisan migrate:install  و migrate رو اجرا کردم، اما ستون اضافه نشده است.

چطور می توانم ستون مورد نظرم را اضافه کنم؟

0
مسعود پرسیده شده در ۱۸ اردیبهشت ۱۳۹۸
16 سوال
0 پاسخ
4امتیاز
Share in:
1 پاسخ

برای ایجاد یک Migration باید از دستور migration:make استفاده کنید. از نام های منحصر به فرد و خاص استفاده کنید که تشخیص آن از دیگر Migration های موجود آسان تر باشد.

php artisan make:migration add_paid_to_users

سپس از متد Schemat::table (به جدول موجود و نه ایجاد جدول جدید) به صورت زیر برای اضافه کردن ستون جدید استفاده کنید:

public function up()
{
    Schema::table('users', function($table) {
        $table->integer('paid');
    });
}

و فراموش نکنید که rollback را هم برای Migration در نظر بگیرید:

public function down()
{
    Schema::table('users', function($table) {
        $table->dropColumn('paid');
    });
}

سپس شما می توانید به صورت زیر همه Migrion ها را اجرا کنید:

php artisan migrate

همچنین با استفاده از متد after، می توانید ستونی که، ستون جدید بعد از آن اضافه خواهد شد را  مشخص کنید:

$table->integer('paid')->after('whichever_column');

 

0
دانیال
پاسخ داده در ۲۰ اردیبهشت ۱۳۹۸
0 سوال
50 پاسخ
27امتیاز
پاسخ شماپاسخ شما با موفقیت ثبت شد.پاسخی وارد نشده است.

ارسال پاسخ