BETA

Railsオリジナルアプリケーションを作りたい!5

投稿日:2019-04-04
最終更新:2019-04-04

100DaysOfCode 31/100

#3 ユーザー登録機能(未完)

ユーザー登録フォーム

form_forを用いて、これまで見かけだけだったユーザー登録フォームを実際に使える状態にしていきます。

ついでに分割してパーシャル化してしまいましょう。

パーシャル化すれば、Qiitaのようにsignupページだけでなくトップページにも簡単にユーザー登録フォームを実装……

できません。冷静に考えると当たり前の話で、
トップページの表示はUsersコントローラではなくStaticPagesコントローラが行っているので、Userモデルを触れません。

そもそもこのアプリのトップページには今後「新着記事」という動的な要素が表示される予定なので、
StaticPagesコントローラという名称も適切ではなかったです。

写経しただけでオリジナルアプリが作れると思ったか……!

どう対処する?

StaticPagesコントローラにもUserモデルを操作する各種アクションを追加する」
という方法を真っ先に思いつきましたが、どうもこれは違う気がします

自分がMVCについて「わかったつもり」になっていたことを痛感しています。
全然何も理解できていませんね……。

現状のまとまらない考え

  • 例えばTutorial14章ではUsersコントローラでMicropostという別名のモデルを読み込んで表示しているが、
    これは一つのUserが複数のMicropostを持っているというリレーションが成立しているため自然
  • StaticPagesという名前のコントローラは「静的なビューを返すだけ」でないと違和感がある
  • トップページの表示をUsersコントローラのhomeアクションにしてしまうとか……
  • 新しいトップページ用コントローラを作って、ユーザー登録も新着記事表示もできるようにしてしまうとか……

終わりに

今回は相当おかしなことを書いている可能性が高い記事になってしまいました。
それでも、躓きとして記録することで今後に活かしていこうと思います。

MVCやRailsについてよく調べてから再検討します!

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

@tammcの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!