Rails 日記アプリの制作 ~rails db:migrate~
Rails日記App制作
- Model作成:DBも作成
$ rails g model モデル名 フィールド:型:(unique|index) 以降必要なだけ
正しくDBは作成されたのだが、sqlite3上だと何も見つからない
sqlite> .tables
で何も出ない
なぜ〜〜〜。
rails console上からだと、モデルから格納されたデータを持ってこれてるのに。
とりあえず rails g migration 関係のまとめ
解決
DBの作成
DBの作成
- dbconsole から作成する
- ActiveRecordからモデルクラスを使って作成する(簡単!)
ActiveRecordで作成したDBにコンソールからアクセスするときは、dbコンソールを使う
$ rails dbconsole sqlite>.tables
これで作成したDBを見れた。解決。and....
ActiveRecordから作成したDB一覧を表示させたい場合
$ ActiveRecord::Base.connection.tables
作成したModelを表示
# 自分のユースケース的にはこれが良かった。全テーブル名を取得して、 tables = ActiveRecord::Base.connection.tables
# こんな感じでmapしてテーブル名からモデルクラスをたどる。 tables.map(&:classify).map(&:safe_constantize).compact