Проблемы при создании универсальной модели в Ruby on Rails 3

Я пытаюсь создать "общую модель" поэтому он может подключаться к любой таблице любой базы данных. Во-первых, я создал этот класс, который подключается к другой указанной базе данных (не используя схему)

Db

class Db < ActiveRecord::Base

    self.abstract_class = true

    attr_accessor :error

    def initialize(item = nil)
        @error = ""
        connect
        super
    end

    def connect
        could_connect = true
        @error = ""

        begin
            ActiveRecord::Base.establish_connection(
              :adapter  => "mysql2",
              :host     => "localhost",
              :username => "root",
              :password => "",
              :database => "another_database", 
              :port => 3306,
              :encoding => "utf8"
            )
        rescue ActiveRecord::ConnectionNotEstablished
            @error = "Could not connect to database. The connection was not established"
            could_connect = false
        rescue Mysql2::Error
            @error = "Could not connect to database using MySQL2"
            could_connect = false
        rescue => e
            @error = "Could not connect to database. #{e.message}."
            could_connect = false
        end

        return could_connect
    end

end

Затем я сделал этот класс, который наследуется от Db и указывает имя таблицы

Gmodel

class Gmodel < Db

    def initialize(new_table_name)
        ActiveRecord::Base.set_table_name(new_table_name)
        super
    end

end

Наконец-то в контроллере

MainController

class MainController < ApplicationController

  def index
    @users = Gmodel.new("users")
  end

end

Но это дает мне эту ошибку:

undefined method `stringify_keys' for "users":String

Что может быть не так? Есть ли лучший способ сделать это? Заранее спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос