railsでアプリケーションを作っており、今、以下のイメージでメニューを生成しようと考えています。
1:DBに設定されているメニュー情報(メニュー名、メニューパス)を取得し、session[:menus]に設定
2:html.erbでループ表示
という実装をしたいのですが、うまく実装できません。
DBに取得して、セッションに詰めるところまではデバッグで確認できたのですが、
その後でhtml.erbに表示する部分ができません。
単純にerb側の構文の間違いのような気もするのですが、どのようにしたら正しく表示されるでしょうか?
①:以下の方法ではできませんでした。
**homeController.rb** #ユーザーがサインイン済みであれば、以下の処理を行う if user_signed_in? #メニューを取得 session[:menus] = Menu.all end
**application.html.rb** <% session[:menus].each do |menu| %> <li><%= link_to menu.menuNm, menu.menuPath %></li> <% end %>
②:以下の方法でもできませんでした。
**homeController.rb** #ユーザーがサインイン済みであれば、以下の処理を行う if user_signed_in? #メニューを取得 session[:menus] = Menu.all $menus = session[:menus] end
**application.html.rb** <% $menus.each do |menu| %> <li><%= link_to menu.menuNm, menu.menuPath %></li> <% end %>
③:以下の方法だとなぜかできます。
**homeController.rb** #ユーザーがサインイン済みであれば、以下の処理を行う if user_signed_in? #メニューを取得 $menus = Menu.all end
**application.html.rb** <% $menus.each do |menu| %> <li><%= link_to menu.menuNm, menu.menuPath %></li> <% end %>
型の問題等があるのでしょうか?
知識不足で大変申し訳無いのですが、お答えいただけると助かります。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/04 16:30 編集
2018/10/05 00:14