アウトプットを頑張る

初めてのプログラミング学習期間中の記録と、日頃読んでいる本をメモのアウトプットをがんばります。

【プログラミング学習】Ruby on Rail データベースとテーブル

■プログラミング学習

f:id:yuma6128:20210811072008j:plain

MVCの中のモデル部分について、Webアプリケーションではデータが保存されていないと成り立たない。
データの管理役として、モデルが必要になる。
データベースにはデータの種類ごとの保存場所となるテーブルを用意し、
表形式のテーブルにおいて、行はレコード、列はカラムと表現をする。
情報はこのテーブルごとに整理がされており、それぞれモデルに対応をしている。

◎モデルの作成コマンド
```
rails g model モデル名
```
命名規則としては、単数形を使用すること。

マイグレーション
モデルをコマンドを実行するとdb/migrateディレクトリに、モデル名のついたファイルが生成されている。
その生成されたファイルを編集してそのモデルの中のテーブルを決める。
カラムの型を指定し、どんなデータが入るのかを設定する。

  1. integer  | 数値  金額、回数など
  2. string       | 文字(短文)  ユーザー名、メールアドレスなど
  3. text     |   文字(長文) 投稿文、説明文など
  4. boolean     | 真か偽か  はい・いいえの選択、合格、不合格のフラグなど
  5. datetime    | 日付と時刻 作成日時、更新日時など

テーブルに必要なカラムを入力し、データベースの変更のために
マイグレーションを実行するコマンド
```
rails db:migrate
```

マイグレーションの修正をしたい場合は、一度ロールバックコマンドの実行が必要。
個人的には一度migateを実行してしまうとロックがかかり、それを解除するのがロールバックのようなImageで考えていた。
ロールバックマイグレーションファイルの修正 →db:migrate で固める。
ロールバックを実行するコマンド
```
rails db:migrate:rollback
```

また現状のマイグレーションが実行済みかどうかを調べるコマンドもあり、
ステータスがup /downの状態を確認する。
upの状態では、そのファイルは実行されているため、修正や削除ができないため注意が必要。
up状態で削除すると、戻すのが大変だった記憶があります。
マイグレーションの状況を確認するコマンド
```
rails db:migrate:status
```

マイグレーションのところは、学習を進めていくとmigrateエラーが私の場合はよく起きていたため、よくmigrate:statusを実行して確認をし、4つ中上から2つ目のマイグレーションがdownしているなど、ステータスを確認しても「??」といことがあった。
ただ一つひとつロールバックしていく、downにしてからいらないマイグレーションファイルを削除するなどしていき、エラーとの戦いをしていきました。


■読書

f:id:yuma6128:20210811073847j:plain

「飲茶の「最強!」のニーチェ」を日曜日に読みました。
本書自体の說明でいうと、哲学者ニーチェについて、対話形式で說明をしていくという構成になっており、集中して読むと通勤の往復などで読める本になっています。
内容はニーチェの考えを順番に受け取っていくことができ、アウトラインを知るのにはとてもためになる本でした。
・価値観を与えられている、刷り込まれている自分がいる
・大いなる正午という言葉
今を大事に、そして子供心を忘れず楽しむ、それ自体が芸術のように感じられるそんな毎日を過ごしていきたいと思いました。