テーブル情報からModelを動的生成する方法 (ActiveRecordの単体利用時)
2203 ワード
# [前提]
# 以下の様なデータを持つusersテーブルが作成されているとする。
# | id | name |
# | 1 | taro |
# | 2 | hanako |
require 'active_record'
# ここは使用するDBにあわせる(この例ではSQLite3)
ActiveRecord::Base.establish_connection(
"adapter" => "sqlite3",
"database" => "./hoge.sqlite3"
)
# 各テーブルのModelを動的に作成する
ActiveRecord::Base.connection.tables.each do |table_name|
class_name = table_name.singularize.camelcase
self.class.const_set class_name, Class.new(ActiveRecord::Base)
end
# 以降、いつもどおりにModelを扱える
User.all
# => [#<User id: 1, name: "taro">, #<User id: 2, name: "hanako">]
Author And Source
この問題について(テーブル情報からModelを動的生成する方法 (ActiveRecordの単体利用時)), 我々は、より多くの情報をここで見つけました https://qiita.com/shindo-r@github/items/36676d0344d98082e891著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .