Как добавить новый столбец с миграциями Yii 2 на определенную позицию в таблице?
предположим, у меня есть эта структура таблицы:
+----+------------+-----------+---------+------+---------+---------+---------------------+---------------------+
| id | first_name | last_name | country | city | address | zipcode | created | updated |
+----+------------+-----------+---------+------+---------+---------+---------------------+---------------------+
| 1 | Duvdevan | Duvdevani | NULL | NULL | NULL | NULL | 2016-02-12 15:37:19 | 2016-02-12 16:35:57 |
+----+------------+-----------+---------+------+---------+---------+---------------------+---------------------+
и я хочу добавить новый столбец под названием email
, сразу после id
и перед first_name
, С помощью addColumn
метод на Migration
класса.
единственное, что я могу сделать в моей новой миграции:
public function up()
{
$this->addColumn('contacts', 'email', $this->string(64));
}
и он поставил его в конце стола, после
3 ответов
ее решили. Если кто-то сталкивается с той же проблемой, это решение я использовал:
public function up()
{
$this->addColumn('contacts', 'email', 'VARCHAR(64) AFTER id');
}
EDIT: версии Yii 2.0.8 вы также можете использовать этот цепной синтаксис:
$this->addColumn('contacts', 'email', $this->string(64)->after('id'));
вы можете использовать команду миграции для этого, как показано ниже :
php yii migrate/create add_email_column_to_contacts_table --fields="email:string(64):after('id')"