フラッシュメッセージとは
「登録が完了しました」「削除が完了しました」というように
正常な動作ができていることをユーザーに知らせるためのメッセージのこと。
Railsではリダイレクトとともに使われることが多いように思います
フラッシュメッセージの表示の仕方
今回、フリマアプリを作成中で
フラッシュメッセージの実装をしました
コントローラーでの記述
エラーハンドリングをした上で
バリデーションに引っかかることなく、@postがcreateされたら
今createした商品のページにredirectするとともに、フラッシュメッセージを表示します
通常、フラッシュメッセージを指定する際は
flash[:notice]という形で定義しますが、
refirect_toとともに使用する場合は上のようにnotice: だけで指定ができます。
↓redirect_toを使わない場合
こちらの例の場合
指定のページにredirectさせた上でのif分岐なので、この場合はflash[:notice]を使用
ビューでの記述
この部分は部分テンプレート化させておくと
色々なページでそれぞれのアクションに対応したフラッシュメッセージを表示させることができ、
チーム開発において他のメンバーから大好評でした!
別途、CSSやJSで装飾するようにしてください。
以下参考