22 lines
		
	
	
		
			530 B
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			530 B
		
	
	
	
		
			Ruby
		
	
	
	
| # frozen_string_literal: true
 | |
| 
 | |
| class AddSearchIndexToAccounts < ActiveRecord::Migration[5.0]
 | |
|   def up
 | |
|     execute <<~SQL.squish
 | |
|       CREATE INDEX search_index
 | |
|       ON accounts
 | |
|       USING gin(
 | |
|         (
 | |
|           setweight(to_tsvector('simple', accounts.display_name), 'A') ||
 | |
|           setweight(to_tsvector('simple', accounts.username), 'B') ||
 | |
|           setweight(to_tsvector('simple', coalesce(accounts.domain, '')), 'C')
 | |
|         )
 | |
|       )
 | |
|     SQL
 | |
|   end
 | |
| 
 | |
|   def down
 | |
|     remove_index :accounts, name: :search_index
 | |
|   end
 | |
| end
 |