Я знаю, что вы не должны манипулировать данными внутри вашей миграции.
Однако мне нужно сделать столбец обнуляемым с уникальными значениями, но на данный момент он имеет дублирующиеся значения (в настоящее время это своего рода заполнители), что может нарушить миграцию.
Это моя (Laravel) миграция:
public function up()
{
Schema::table('user_subscriptions', function (Blueprint $table) {
$table->string('cc_auth_code', 50)->comment('Approval Code')->change();
$table->string('guid', 100)
->comment('Transaction ID')->nullable()->default(null)->change();
});
// for some reason this does not work inside the callback
UserSubscription::whereGuid('UNKNOWN_GUID')->update(['guid' => null]);
Schema::table('user_subscriptions', function (Blueprint $table) {
$table->unique('guid');
});
}
Есть ли лучший способ?