やりたいこと
現在、tabを作成し、それぞれをクリックしたら、選択した箇所のデザインが変わるようにしたいと考えています。
今回、このtabは、カテゴリーモデルを作成し、そのカテゴリーの作成に応じて、ループ処理によって、項目が
追加されていくようにしています。しかし、その項目表示はできるのですが、当該カテゴリーをクリックした際に、
「class="@@@"」に「is-active」が表示されるようにしたいのですが、なされません。一度、コードをご確認
いただき、ご助言をお願いいたします。
問題のコード
<div class="container"> <ul> <% Category.all.each do |category| %> <li class="<%= 'is-active' if params[:name]== category.name %>"> <a href="#tabpage<%= category.id %>"><%= category.name %></a> </li> <% end %> </ul> </div>
問題の箇所は、if params[:name]== category.nameの部分です。category.nameには値は入っていますが、
categoryモデルのカラム名である、nameには値は入っていません。
例えば、if params[:name]== category.nameの部分をCategory.find_by(params[:name]).id = category.idとすると、最初のTabには、
is-activeは入るのですが、2つ目以降のtabには、はいりません。
どうしたものか、ご助言をお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/20 15:52
2018/06/21 06:17
2018/06/21 14:52