2021/1/6~2021/1/8
今回の内容
・商品購入機能の実装
・テストコードの実装
tokenのテストコードの書き方がよく理解できていなかった
・DB保存処理修正
データを確認したところ購入した際にDBに保存されていなかった
createアクションでbinding.pryをしたところidが送られておらず、permit:falseとなっていた
createアクションではデータがない場合でもからのデータとして送信されてしまう
create!とすることでデータがない時はエラー表示することができる
フォームオブジェクトの理解が足らない
・購入済み商品表示の変更
sold_outの表示ができるようにif文を記述
itemsテーブルにorder_idというカラムはないのでitemsテーブルから引用はできないと思っていたが、アソシエーションができていれば「.”アソシエーションの形”」で記述できる。
存在するかしないかで条件分岐させたかったので.prezent?をしようした
購入機能が完成したのでコードレビューしたところ初めて1発でLGTMがもらえた
変更をデプロイしたところDBにアクセスする画面でエラーが発生
DB内のカラムを変更した部分がgit push heroku master をしてもうまく読み込まれなかった。
heroku run rails db:migrate:reset DISABLE_DATABASE_ENVIRONMENT_CHECK=1
でDBを何回かリセットした結果解決した
どこでエラーが起きているかを
heroku logs --tail
で調べ、その対応をしていくことで解消できた
これで達成要件は完成なので最終チェックをしてもらう
感想
今回はメンターさんに質問して解決したが今後は自分でこのようなエラーを解決できるようにしなければならない
そのためにも質問できるうちに多くのエラーを体験して経験することが大切