Sha256: 6e0f671578e65541e2d4176f4a4ce30229e2987d0e6bab94535c1b83f925b6f0
Contents?: true
Size: 990 Bytes
Versions: 7
Compression:
Stored size: 990 Bytes
Contents
require 'yaml' class UpgradeFromAlchemyFerret < ActiveRecord::Migration def up not_searchable_elements.each do |element| element['contents'].each do |content| next unless Alchemy::PgSearch.is_searchable_essence?(content) next if content['searchable'].nil? "Alchemy::#{content['type'].classify}".constantize .joins(content: :element) .where(alchemy_contents: {name: content['name']}) .where(alchemy_elements: {name: element['name']}) .update_all(searchable: false) say "Sets searchable to false for `#{content['name']}` contents of `#{element['name']}` elements." end end end private def elements_yml @elements_yml ||= YAML.load_file Rails.root.join('config/alchemy/elements.yml') end def not_searchable_elements elements_yml.select do |element| next if !element['contents'] element['contents'].any? { |content| content['searchable'] == false } end end end
Version data entries
7 entries across 7 versions & 1 rubygems