Вграденият метод ActiveRecord за създаване на индекси (add_index
) не поддържа функции или други по-разширени функции. Вместо това можете да използвате execute
за създаване на индекс с SQL:
execute <<-SQL
CREATE INDEX temporary_events_campaign_tinfoid_date_messagetype
ON temporary_events(templateinfoid, campaign, date(gw_out_time), messagetype);
SQL
Имайте предвид, че използването на execute
в миграции може да бъде проблематично, ако не използвате формата на SQL схема (config.active_record.schema_format = :sql
). За повече информация потърсете schema_format
.