おつかれさまでした!
アプリ完成、おめでとうございます!!!
ここがすごいと感じました!!
こういう対応ができてきているのも、いわゆる「自走力」がついきているのだろうなと感じました。
ユーザー作成していないのでログインできずちょっと慌てた(heroku run rails c で直接ユーザー作成しました)
気になる点をあげるとすれば、おそらくparamsを必要以上に受け入れているのではないかなという気がしました。
間違いかもしれないですけど汗
あと、春琴抄を読んだことないですけど、私は痴人の愛が好きです。
・・・なんか全体的に先生みたいなコメントになりましたが、とにかくおつかれさまです!
あと、ここですけどBootstrapが当てられず断念された感じですかね?
これは初学者あるあるらしいです笑
https://gyazo.com/769363cc54602ce9e712103e36d0b6a7
英語ですが、これが参考になるかも。
(ハッシュロケット記法が古いので、そこは無視してください。)
https://stackoverflow.com/questions/34055625/rails-collection-select-bootstrap-dropdown
あとは、もうみていると思いますけど、pikawakaとか。
https://pikawaka.com/rails/form_with#form.collection_select
けど、コードを見るとそもそもクラスを当ててない感じですかね。
= f.collection_select(:category_id, Category.all, :id, :name, {prompt: "カテゴリーを選択してください"})
趣味の問題ですけど、以下のようにするといい感じになるかも。
= f.collection_select(:category_id, Category.all, :id, :name, { prompt: "カテゴリーを選択してください" }, { class: form-control })
みけた先生ありがとうございますm(_ _)m
参考書の内容に毛の生えたような内容ですが、いちからつくることでアプリ作成の全体の流れが把握できました。
現段階では参考書レベルで問題ないです!一から作ることで全体像を身につかせることが大事!
https://impressions-sample-app.herokuapp.com/admin/users/new
→ 管理者ユーザーの新規投稿フォームがあるのはやばいです笑
誰でも管理者になれてしまう笑
あとはプルリクが一つもないのでmasterで全て開発してたのがばれてます笑
Slackにも書きましたが他の方にレビューしてもらう試みをしてみようかなと思ってます!
@みけた先生
たくさんありがとうございます…!!
気になる点をあげるとすれば、おそらくparamsを必要以上に受け入れているのではないかなという気がしました。
ストロングパラメータ?に関してもかなり探り探りやっていましたので、おかしなところがありそうです。(T_T)
痴人の愛、有名ですよね…!読んだことないので読んでみます笑
あと、ここですけどBootstrapが当てられず断念された感じですかね?
まさに、そうです…笑
slimでのbootstrapの当て方が難しく感じて、さらに最後らへんだったのでやっつけ感が出てしまいました…笑
後でやってみます!!
@だいそんさん
管理者ユーザーの新規投稿フォームがあるのはやばいです笑 誰でも管理者になれてしまう笑
あとはプルリクが一つもないのでmasterで全て開発してたのがばれてます笑
やばい、、自分でやっていると気づかないものなんですね…修正します…
プルリクに関しても全く頭からすっぽぬけていました(いまいち使い方をわかっていない)
Slackにも書きましたが他の方にレビューしてもらう試みをしてみようかなと思ってます!
この程度のアプリで申し訳なさがあるんですが、ありがたいです…!!
アプリ完成おめでとうございます!あとお疲れ様です!
谷崎純一郎はみんな押してるから読んでみます!!
ググった限りでは、相当癖強そうですが笑
いいなと思った点
・インデントがずれていないから見やすかった。丁寧だなと思った。
・cardのcreated_atが国際化対応されていた、文字色も変えているので見やすかった。
・BootStrapのrow-eq-height
とか知らなかったので勉強になった。
すごくユーザーが見やすいように気を遣っているんだなと感じました!
ひとまずお疲れ様でした!
あと1個だけ!
ログインフォームのメールアドレスがtext_fieldになってました!
<input class="form-control" id="session_email" type="text" name="session[email]">
これ実際に生成されるHTMLですけど
type=
っていう所がemailになってたら入力した値に@が無かったら入らない様にしてくれます。
type="email"
= email_field
type="text"
= text_field
form_withの中ではこんな感じです!
@みけた先生 たくさんありがとうございます…!!
いえいえ、スパルタコースの長から先生になれたようで光栄です 笑
ストロングパラメータ?に関してもかなり探り探りやっていましたので、おかしなところがありそうです。
そうです!paramsを必要以上にと言うか、ストロングパラメータのところでparams requireするものが多いところが
ありそうだなと思ったということです! けど、きちんとみてないので、違ったらすみません。。。
requireするものが多くても、アプリの動作的に支障はないですけど、悪意のあるユーザーにその脆弱性をつかれると、
意図していないデータが更新されたり削除されちゃったりするので、注意する必要があるみたいです!
@taishiroさん コメントありがとうございます!!(返信が遅くなりすみません)
すごくユーザーが見やすいように気を遣っているんだなと感じました! ひとまずお疲れ様でした!
ありがとうございます…!card使ってそれっぽくしてみました。まだまだですが使いやすいアプリ作りを心掛けたいとは思っています!
ログインフォームのメールアドレスがtext_fieldになってました!
これ実際に生成されるHTMLですけど type=っていう所がemailになってたら入力した値に@が無かったら入らない様にしてくれます。
知らなかったです…!!そういった機能(?)があるんですね。修正しておきます!
@みけた先生 (返信遅くなりすみません)
requireするものが多くても、アプリの動作的に支障はないですけど、悪意のあるユーザーにその脆弱性をつかれると、
意図していないデータが更新されたり削除されちゃったりするので、注意する必要があるみたいです!
そうなんですね…全然意識してなかったので気を付けないとですね。何かしら改善したほうがよさそう。。
ちょっといまいちピンときていないところもあるので、調べてみます!ありがとうございます!
HTMLの仕様ですね!
これ分かりやすいので貼っておきますね!
https://developer.mozilla.org/ja/docs/Web/HTML/Element/input
ここのemailのformに testexample.com
とか@を抜いて入力してマウスオーバーしてみると@を入力して下さい
と言う様な注意書きがでると思います!
他にもあるんで試して遊んでみて下さーい笑
@taishiroさん
ありがとうございます…!めちゃくちゃわかりやすかったです。。
フォーム関連だけでも知らないものがたくさんありました!他も色々見てみます!!