首页 > 解决方案 > 无法使用 --step 单列回滚

问题描述

所以我只是在表格中添加了php artisan migrate一个orders列。

该列是通过php artisan make:migration add_balance_to_orders_table --table=orders命令添加的。

如果php artisan migrate:rollback --step=1我得到这个:

方法 Illuminate\Database\Schema\Blueprint::dropColum 不存在。

错误的方法调用:您的意思是 Illuminate\Database\Schema\Blueprint::dropColumn() 吗?

什么时候dropColum出现。

这是它的外观:

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class AddBalanceToOrdersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('orders', function (Blueprint $table) {
            $table->float('balance');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('orders', function (Blueprint $table) {
            $table->dropColum('balance');
        });
    }

这里有什么问题?

标签: laravel

解决方案


就像它在错误中所说的那样

方法 Illuminate\Database\Schema\Blueprint::dropColum 不存在。

错误的方法调用:您的意思是 Illuminate\Database\Schema\Blueprint::dropColumn() 吗?

您将其dropColum更改为dropColumn如下所示

public function down()
        {
            Schema::table('orders', function (Blueprint $table) {
                $table->dropColumn('balance');
            });
        }

然后运行

php artisan migrate:rollback --step=1 

希望这对你有用


推荐阅读