Подтвердить что ты не робот

Rails: gem/plugin для поиска отсутствующих индексов?

Есть ли драгоценный камень или плагин, например https://github.com/eladmeidar/rails_indexes, который работает для rails3?

4b9b3361

Ответ 1

Вы можете вставить следующий код в консоли, чтобы узнать недостающие индексы внешнего ключа. Это, однако, не так способно к плагину, о котором вы говорите. Он ищет только внешние ключи типа rails, которые имеют _id в конце имени своего столбца.

c = ActiveRecord::Base.connection
c.tables.collect do |t|  
  columns = c.columns(t).collect(&:name).select {|x| x.ends_with?("_id") || x.ends_with?("_type")}
  indexed_columns = c.indexes(t).collect(&:columns).flatten.uniq
  unindexed = columns - indexed_columns
  unless unindexed.empty?
    puts "#{t}: #{unindexed.join(", ")}"
  end
end

Источник

Ответ 2

Там есть вилка rails_indexes, которая была обновлена ​​для работы с Rails 3 и Ruby 1.9

https://github.com/plentz/lol_dba