users
というテーブルに定義されているカラム情報を取得する方法のメモ。使うAPI: Ruby on Rails API columns()
テーブル名からモデルクラスを参照し、それに.columnsメソッドを使うと取得できる。
# テーブル名から、定義されているすべてのカラム定義を取得 Module.const_get('users'.classify).columns # 特定のカラムの情報を取得(例えば `id`) Module.const_get('users'.classify).columns['id'] # 特定のカラムから定義の一部を取得 col = Module.const_get('users'.classify).columns['id'] col.type # データ型を取得
カラムの定義の取得はこんなメソッドが用意されているっぽい。
コレで全てかはわからんとです… (´・ω・`)
.name
: カラム名.sql_type
: SQLでのデータ型.type
: データ型.null
: NOT NULL制約.limit
: カラム数制限(?).precision
: 数値桁数.scale
: 小数点以下桁数.default
: デフォルト値.primary
: Primary制約.coder
: ??
0 件のコメント:
コメントを投稿