Den inbyggda ActiveRecord-metoden för att skapa index (add_index
) stöder inte funktioner eller andra mer avancerade funktioner. Istället kan du använda execute
för att skapa indexet med SQL:
execute <<-SQL
CREATE INDEX temporary_events_campaign_tinfoid_date_messagetype
ON temporary_events(templateinfoid, campaign, date(gw_out_time), messagetype);
SQL
Observera att användningen av execute
i migrering kan vara problematiskt om du inte använder SQL-schemaformatet (config.active_record.schema_format = :sql
). För mer information, sök efter schema_format
.