Rails

【Rails】複数のステップをまたいで登録できるWizard形式とは?

Rails

 

今回はフォームを実装する際によく用いられるWizard形式(Wizard型)について解説したいと思います。複数ページをまたいで何かを登録をする際に用いられる形式なので、ぜひ覚えておきましょう。

Wizard形式を直訳すると「魔法使い形式」となるけど、魔法を使ったように簡単に実装できるって意味なのかなあ。

Wizard形式とは

Wizard形式とは、複数のステップをまたいで何かを登録する時の名称です。

例えば、Wizard形式を用いてユーザー登録を実装しようとすると、以下のような流れになります。フォームとフォームの間にバリデーションを挟むことで、記載内容に不備があった場合はページを戻すような仕組みになっています。

Wizard形式例

実装する際の注意点

Wizard形式のフォームを実装する際は、以下の点について注意しながら進めていきましょう。

  • 重要情報はPOSTメソッドで送る
  • フォーム毎でテーブルを分ける

 

GETメソッドで登録情報を送ることもできますが、重要情報(機密情報)はPOSTメソッドで送ることが推奨されているようです。

POSTメソッドで送るデータはWebブラウザ上には現れないので、秘匿性の高いデータやデータベースなど重要度の高いデータは必ずPOSTメソッドを使いましょう。
また、送ることの出来るデータ量も特に明確な制限があるわけでは無いので、大量のデータを送る際も必ず、POSTメソッドを使いましょう。

なので、基本的にはデータ送信の際のメソッドはPOSTと覚えておきましょう。

参考:https://yachin29.hatenablog.com/entry/2017/01/06/012842

 

また、フォーム毎でテーブルを分ける必要があります。上記の例で言うと、usersテーブルの中にaddressに関するデータや電話番号のデータを入れることはできません。

これは、フォーム毎に記載不備がないかバリデーションチェックを毎回行うためです。

Wizard形式のテーブル

まとめ

  • Wizard形式とは、複数のステップをまたいで何かを登録する時の名称のことを指す
  • 重要情報はPOSTメソッドで送る
  • フォームごとにテーブルを作成する

 

 

今回はフォームを実装する際によく用いられるWizard形式(Wizard型)について解説しました。複数ページをまたいで何かを登録をする際に用いられる形式なので、ぜひ覚えておきましょう。