如何编写迁移来撤消Laravel中的唯一约束?

时间:2015-06-02 22:24:40

标签: php laravel laravel-4 laravel-5 database-migration

我会这样做以在表格中创建我的电子邮件字段unique

$table->unique('email');

我试过

public function up()
{
    Schema::table('contacts', function(Blueprint $table)
    {
        $table->dropUnique('email');
    });
}

然后,当我运行php artisan migrate时,我得到了这个

enter image description here

它告诉我它不存在,但我百分百肯定它就在那里。

enter image description here

如何编写迁移以撤消该操作?

2 个答案:

答案 0 :(得分:30)

你必须$table->dropUnique('users_email_unique');

  

要删除索引,您必须指定索引的名称。 Laravel指定了一个   默认情况下,索引的名称是合理的。简单地连接   表名,索引中列的名称以及索引类型。

答案 1 :(得分:0)

这是删除唯一标记的更好方法。您可以在此处使用实际的列名。

$table->dropUnique(['name']);