0

我有使用 Rails 3 + Postgresql 的多租户应用程序我想获取模式的大小..

在 size_cotroller.rb 上

class SizesController < ApplicationController

     def index

      @tablesize = ActiveRecord::Base.connection.select_rows(%q{select pg_size_pretty(CAST((SELECT SUM(pg_total_relation_size(table_schema || '.' || table_name) ) FROM information_schema.tables WHERE table_schema = 'schema2') As bigint) )  As schema_size})
     end


end

但输出显示:

[[“264 KB”]]

如何取大小的值?

例子

264

任何的想法?

4

1 回答 1

1

假设格式总是[["### kB"]],一种方法(在 Ruby 中)是做一些字符串操作

[1] pry(main)> [["264 kB"]].to_s.gsub(/\D/, '').to_i
=> 264
于 2012-11-27T14:11:11.157 回答