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

しかし、これを示す出力:

[["264kB"]]

サイズの値だけを取得する方法は?

264

何か案が?

4

1 に答える 1

1

形式が常に[["### kB"]]であると仮定すると、(Rubyでの)1つの方法は、文字列操作を少し行うことです。

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