15日目
今日の学習
Ruby on Rails
昨日、ストロングパラメータの箇所でエラーが発生し、require(:post)
を削るとエラーが起きなくなったと書いた。
本日、課題を講座の方に見てもらったが、やはりここを削ることは危険であった。
たくさんモデルがあり、カラム名が重複すると衝突してしまうため、require
は入れるようにしなければならない。
つまり、require(:post)
と記述した上で、エラーを回避しなければならない。
さらに、requireをしっかり記述できていれば、form_with
にURLを直接していなくても、情報が飛ぶようになる。
原因は、コントローラーに@post = Post.new
を定義していなかったからだった。
ビューファイルとしっかり@変数名を紐付けなければならない。
よく理解できていないが、とにかくrequireを削るように考えるのではなく、定義漏れがないかを先に疑うようにするべきだった。
さあ、修正したのでもう一度pushしよう......と思ったら、エラーメッセージが出てプッシュできない。
git pushがrejectされた時の対処法 - Qiita
こちらに対処法でことなきを得た。
昨日、プッシュした後に不要なファイルをGitHub上で削除してしまったため、リモートリポジトリの内容が変化していたのが原因(のはず)。
RuboCop
静的コードを自動で修正してくれるツールの使い方を学習。
共同開発等でこういったツールを使用する際は、事前に確認を怠ってはいけないということを今から意識しておく必要があると感じた。
Ruby
Rubyおすすめの参考書といえばこれ、と名高い本を購入した。
時間を見つけて、Railsの課題などと並行して確認していきたい。