21歳フリーターからrailsエンジニアになるまで

21歳フリーターの僕がrailsエンジニアになるまでを自分なりに書いていくブログです。

ポテパンキャンプ Rails修行その10 〜少しづつ改善〜

今日も課題に取り組んでおります。今までは1日の終わりにブログを書いていましたが、忘れたりして内容が薄くなりつつあるので、随時下書きをしながら書くことにしました!

  1. 写真投稿解決
  2. ラジオボタンほぼ解決
  3. 検索実装 

 1つのエラーを解決しました(涙)嬉しいです。エラーを解決できた時の感動は本当に気持ちがいいですね。

解決できたことは画像投稿フォームにて写真選択なしで投稿しようとするとバリデーションにかけたpresence: trueに対するcan't be blankが出るはずなのにparamsがemptyだぞ!というエラーが返ってくるエラーです。エラーメッセージのを調べてみるとどうやらストロングパラメーターに原因があるみたいだった。params.require.(:micropost).permit(:picture)のrequireが必要ないらしい。そこでparams.permit(:picture)こう直してみたら

f:id:yamasey712:20190731133211p:plain

できた。。(涙)なんでかは完全には理解できないが、そもそもストロングパラメーターは、多くの属性を一度に更新したい場合はどの属性のマスアップデートを許可するか開発者が明示的に指定しなければならないということ。つまりもしユーザーモデルにアドミンがありそこにアクセスされてはとんでもないことになってしまうのでそれを防ぐ働きがある。それを踏まえると今回はマイクロポストの中にはpictureカラムしかなかったので、requireする必要がなかったんだと解釈しました。*あってる保証はありません。

 2つ目はラジオボタンほぼ解決。

ほぼというのは理由がありますが、まずは設定画面にラジオボタンを表示させ選択後変更ボタンを押すとプロフィールページに飛ぶようになりました。

f:id:yamasey712:20190731174918p:plain
    ↑こんな感じで!しかしここまではよかったんですがDBに反映されてるかなと確認してみたら反映されてない。なぜだぁここもまた解決するべき一つに追加ですね。

 3つ目は検索機能の実装です。

一見難しいように見えますが意外に難しくはないです。

このサイトがとても分かり易かったです。

qiita.com

着実ではありますが、完成に近づいております。あと4日間。やはり日にちが経つのはあっとゆーまです。休んでる暇はありません。やるのみ!そして絶対に自社開発企業に入る!明日も頑張ります。