Flowdock
method

find_unique_index_for

Importance_0
v6.1.3.1 - Show latest stable - 0 notes - Class: InsertAll
find_unique_index_for(unique_by) private

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File activerecord/lib/active_record/insert_all.rb, line 71
      def find_unique_index_for(unique_by)
        return unique_by if !connection.supports_insert_conflict_target?

        name_or_columns = unique_by || model.primary_key
        match = Array(name_or_columns).map(&:to_s)

        if index = unique_indexes.find { |i| match.include?(i.name) || i.columns == match }
          index
        elsif match == primary_keys
          unique_by.nil? ? nil : ActiveRecord::ConnectionAdapters::IndexDefinition.new(model.table_name, "#{model.table_name}_primary_key", true, match)
        else
          raise ArgumentError, "No unique index found for #{name_or_columns}"
        end
      end
Register or log in to add new notes.