TECH CAMP43日目 解決まで6時間

商品情報編集機能と削除機能は無事に実装完了。

その先の購入機能の実装がめちゃくちゃ大変……。

1つのフォームから複数のテーブルにデータを保存するFormオブジェクトを使うんだけど、仕組みがよく分かっていない上に、補足カリキュラムでやってた時と必要なデータとかテーブルとかも違うからもう謎すぎて。

どんだけやってもテーブルにデータが保存されず、binding.pryの記述をしまくって、どこにどういうデータがあるのか、保存するために何が必要なのか、それを持ってくるためにはどう記述すればいいのか、というのを延々とやってました。

夕方くらいからずーーーーーっとやり続けて6時間くらい。

ようやく解決!!!!!!!!!!1

ストロングパラメーターの記述で、必要なデータをmergeしてないことによるミスでした。

いや、こう書くとすごくあっさりしてるんだけど、
コントローラーの記述、モデルの記述、ストロングパラメーターの記述などなど、多岐にわたる中から少しずつ原因を探していく作業は本当に大変だった!!

でも少しずつ光が見えてきて、無事に解決した瞬間の気持ちよさは半端ないっすね!

そしてバリデーションエラーのメッセージを日本語化したいところでまた2時間くらい詰まってた。
「House numberを入力してください」みたいな、英語も日本語も中途半端な状態。
ja.ymlを編集するんだけど、どう編集しても日本語にならない…!
別にそのままにしてても先には進めるんだけど、どうにかして日本語にしたい。

これ解決できるかなー……。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする