/var/www/yatta47.log

/var/www/yatta47.log

やったのログ置場です。スクラップみたいな短編が多いかと。

モデルのカラム名を簡単に取得する方法

本日はRailsの話題。

ActiveRecordを使っているときにたまーにカラム名を忘れる場合があります。

ActiveModelにattribute_namesというカラムを配列で返すメソッドがあるらしいので、それを使えば確認できました。

 

使い方はModel名.attribute_namesといった感じ。

$ rails runner 'p Video.attribute_names'
["id", "video_id", "published", "title", "thumbnail", "average", "statistics", "created_at", "updated_at"]

$ rails runner 'p Video.column_names'
["id", "video_id", "published", "title", "thumbnail", "average", "statistics", "created_at", "updated_at"]

同様のことが.column_namesでも出来るようです。上の例では、ターミナルを使ってVideoモデルのカラム名をrunnerを使って取得しています。

 

まとめ

今まではMigrationファイルを見ていたから驚きでした。これでカラムの型まで返してくれたらいうことない感じです。(←わがまま

コード補完が効けばその辺もだいぶ意識することは少なくなるんでしょうけどねぇ。

 

参考サイト

ActiveModelのカラム名一覧を取得するメソッド - baronyan's blog