如何从rails控制台列出postgres中的模式?

时间:2017-07-13 00:24:29

标签: ruby-on-rails postgresql activerecord rails-console

我想从rails控制台获取当前数据库中的模式列表。目前,我正在执行原始sql以通过

获取信息
ActiveRecord::Base.connection.execute("select schema_name from information_schema.schemata")

使用ActiveRecord从rails控制台检索此信息是否有更正确的方法?

2 个答案:

答案 0 :(得分:2)

我尝试了以下内容,它对我有用。

data = ActiveRecord::Base.connection.execute('select * from information_schema.schemata')
data.each do |schema|
  puts schema['schema_name']
end

它返回架构名称。

答案 1 :(得分:1)

您使用的SQL查询非常正确。信息模式是SQL标准的一部分。

ActiveRecord没有现成的方法。

所以似乎没有更好的方法。