我正在为我正在编写的插件编写一个迁移生成器,我需要能够找到一个表的唯一索引,这样我就可以修改现有的唯一索引,使之成为一个复合唯一索引.我一直在试图找到一种方法,通过ActiveRecord访问表的索引.我只能找到ActiveRecord::ConnectionAdapters::PostgreSQLAdapter::indexes方法,但不幸的是,这只适用于PosgreSQLAdapter.我需要能够支持其他主要数据库.
我首先将模式变灰.但我很快意识到,这是一个糟糕的rb文件索引策略.
我在想,如果ActiveRecord不能为多个数据库适配器提供这样做的方法,我可能可以编写特定于适配器的查询,从表中检索索引信息.如果我需要使用这种方法,什么是确定正在使用的适配器的好方法?
如果有人知道一种让ActiveRecord列出表索引信息的方法,那将是理想的.