Чтобы запустить миграцию в CodeIgniter, вам необходимо выполнить несколько шагов. В этой статье блога я объясню несколько методов запуска миграции в CodeIgniter, а также приведу примеры кода.
Метод 1: использование интерфейса командной строки (CLI)
CodeIgniter предоставляет инструмент интерфейса командной строки (CLI), который позволяет легко выполнять миграцию. Вот как вы можете его использовать:
Шаг 1. Откройте командную строку или терминал.
Шаг 2. Перейдите в корневой каталог вашего проекта CodeIgniter.
Шаг 3. Запустите следующую команду, чтобы выполнить все ожидающие миграции:
php spark migrate
Эта команда запустит все ожидающие миграции и соответствующим образом обновит схему вашей базы данных.
Метод 2: использование библиотеки миграции
CodeIgniter также предоставляет библиотеку миграции, которую вы можете использовать в коде своего приложения. Выполните следующие действия, чтобы использовать библиотеку миграции:
Шаг 1. Загрузите библиотеку миграции в контроллер:
$this->load->library('migration');
Шаг 2. Запустите миграцию, используя метод version():
if ($this->migration->version(3) === FALSE) {
show_error($this->migration->error_string());
} else {
echo 'Migrations ran successfully.';
}
В приведенном выше примере метод version()запускает миграцию с указанным номером версии. Если миграция не удалась, метод error_string()вернет сообщение об ошибке.
Метод 3: использование класса Database Forge
Класс Database Forge в CodeIgniter позволяет создавать, изменять и удалять таблицы базы данных. Вы также можете запускать миграции, используя этот класс. Вот пример:
Шаг 1. Загрузите базу данных и библиотеку Forge в свой контроллер:
$this->load->database();
$this->load->dbforge();
Шаг 2. Запустите миграцию, используя методы dbforge->add_field()и dbforge->create_table():
$fields = [
'id' => [
'type' => 'INT',
'constraint' => 5,
'unsigned' => TRUE,
'auto_increment' => TRUE
],
'title' => [
'type' => 'VARCHAR',
'constraint' => '100',
],
'description' => [
'type' => 'TEXT',
],
];
$this->dbforge->add_field($fields);
$this->dbforge->create_table('articles');
В приведенном выше примере мы определяем поля таблицы с помощью массива, а затем используем метод add_field()для добавления полей в таблицу. Наконец, метод create_table()создает в базе данных таблицу «articles».