私の Rails アプリケーションでは、ユーザーがプロファイルを更新するまで、プロファイルを更新するようにという警告通知が表示されるようにしたいと考えていました。具体的には、彼らにできるだけ早く名前を記入してもらいたいのですが、サインアップ中には記入してほしくありません。そこで、アプリケーション レイアウトに読み込まれるパーシャルに次のように記述しました。
<% if user_signed_in? && current_user.profile.name == nil %>
<div class="alert alert-warning alert-dismissable">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
Please fill in your Profile as soon as possible. This information is important for you to use the application properly.
<%= link_to "Do it now", edit_profile_path(current_user) %>
</div>
<% end %>
しかし、私はこれを行うには本当に不格好な方法だと感じています。まず、これは、サインインしたユーザーがページにアクセスするたびに、プロファイルのデータベース チェックも行われることを意味します。次に、ビューのロジックです。
だから私の質問は、これを行うためのより「Railsの方法」は何でしょうか? どういうわけか、ロジックをアプリケーション コントローラーに移動しますか? ロジックの結果をセッション変数などにロードして、ページをロードするたびにデータベースをチェックする必要がないようにしますか?