Sha256: c9d10cf1045ec84edb80dd7b774f922a3383b484d2b2a87b24291a5e9788fdc7
Contents?: true
Size: 1.21 KB
Versions: 2
Compression:
Stored size: 1.21 KB
Contents
module Qa module Authorities module Local # class MysqlTableBasedAuthority < Local::TableBasedAuthority def self.check_for_index conn = ActiveRecord::Base.connection if table_or_view_exists? && conn.index_name_exists?(:qa_local_authority_entries, 'index_qa_local_authority_entries_on_lower_label_and_authority', :default).blank? Rails.logger.error "You've installed mysql local authority tables, but you haven't indexed the lower label. Rails doesn't support functional indexes in migrations, so we tried to execute it for you but something went wrong...\n" \ 'Make sure your table has a lower_label column which is virtuall created and that column is indexed' \ ' ALTER TABLE qa_local_authority_entries ADD lower_label VARCHAR(256) GENERATED ALWAYS AS (lower(label)) VIRTUAL' \ ' CREATE INDEX index_qa_local_authority_entries_on_lower_label_and_authority ON qa_local_authority_entries (local_authority_id, lower_label)' end end def search(q) return [] if q.blank? output_set(base_relation.where('lower_label like ?', "#{q.downcase}%").limit(25)) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
qa-0.10.1 | lib/qa/authorities/local/mysql_table_based_authority.rb |
qa-0.10.0 | lib/qa/authorities/local/mysql_table_based_authority.rb |