使用迁移Laravel 5.4更新列

时间:2017-04-04 11:08:51

标签: laravel-5

我有一个正在运行的应用程序,我看到表单中的字段不是必需的,可以留空。但是通过迁移,数据库中的该字段被设置为“非空”。我想改变它,所以我通过检查Null来做到这一点。但是我如何对迁移做同样的事情?我阅读了文档并创建了这个

public function up()
{
   Scheme::table('modules', function (Blueprint $table) {
       $table->text('content')->nullable();
   });
}

但是当我运行迁移时,它会给我错误表已经存在(显然,因为其他迁移文件存在)。我应该如何实现目标。

1 个答案:

答案 0 :(得分:0)

将您的代码更改为此并注意->change()部分:

public function up()
{
   Scheme::table('modules', function (Blueprint $table) {
       $table->text('content')->nullable()->change();
   });
}

Documentation on changing columns

NB: 您需要Doctrine / DBal包才能使其正常工作:

  

在修改列之前,请务必将doctrine / dbal依赖项添加到composer.json文件中。 Doctrine DBAL库用于确定列的当前状态,并创建对列进行指定调整所需的SQL查询