Добавить индексы к полям

Главные вкладки

Аватар пользователя Artalek Artalek 3 февраля 2021 в 12:23

Здравствуйте, как в файле mymodule.install добавить к полям таблицы индексы?

Вот так работает:

<?php
function mymodule_update_20210203125823()
{
    
$schema Database::getConnection()->schema();
    
$spec = [
        
'fields' => [
            
'login' => [
                
'description' => 'Логин',
                
'type' => 'varchar',
                
'length' => 255,
                
'not null' => TRUE,
            ],
            
'indexes' => [
                
'login' => ['login'],
            ],
        ],
    ];
    
$schema->addIndex('table''login', ['login'], $spec);
//    db_add_index('table', 'login', ['login'], $spec);
}
?>

Но в данном варианте мне не нравиться, чтобы приходиться тут указывать параметры данного поля, мне нужно для 4 полей добавить индекс, и если каждую вот так описать, будет много кода, может есть другой вариант? более сокращенный.