Commit 3c70d3c3 by Alexander Makarov

Fixes #3305: `yii migrate` now automatically flushes DB schema cache after successful migration

parent eaf8ece5
......@@ -243,6 +243,7 @@ Yii Framework 2 Change Log
- Enh #3283: Added `$checkAjax` to `yii\web\User::loginRequired()` (qiangxue)
- Enh #3284: Added support for checking multiple ETags by `yii\filters\HttpCache` (qiangxue)
- Enh #3298: Supported configuring `View::theme` using a class name (netyum, qiangxue)
- Enh #3305: `yii migrate` now automatically flushes DB schema cache after successful migration (6pblcb, samdark)
- Enh #3328: `BaseMailer` generates better text body from html body (armab)
- Enh #3380: Allow `value` in `defaultValueValidator` to be a closure (Alex-Code)
- Enh #3384: Added callback-style transactions (leandrogehlen, Ragazzo, samdark)
......
......@@ -490,6 +490,7 @@ abstract class BaseMigrateController extends Controller
$this->addMigrationHistory($class);
$time = microtime(true) - $start;
echo "*** applied $class (time: " . sprintf("%.3f", $time) . "s)\n\n";
$this->refreshSchema();
return true;
} else {
......@@ -519,6 +520,7 @@ abstract class BaseMigrateController extends Controller
$time = microtime(true) - $start;
echo "*** reverted $class (time: " . sprintf("%.3f", $time) . "s)\n\n";
return true;
} else {
$time = microtime(true) - $start;
......@@ -623,6 +625,16 @@ abstract class BaseMigrateController extends Controller
return $migrations;
}
/**
* Flushes DB schema cache.
* This method should be implemented if connection has DB schema support.
* @param string $name connection component name
* @since 2.0.1
*/
protected function refreshSchema($name = 'db')
{
}
/**
* Returns the migration history.
......
......@@ -178,4 +178,13 @@ class MigrateController extends BaseMigrateController
'version' => $version,
])->execute();
}
/**
* @inheritdoc
*/
protected function refreshSchema($name = 'db')
{
$this->db->schema->refresh();
echo "DB schema cache was flushed.\n";
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment