0

初歩的な問題があります。質問から、私がルビーとレールに少し慣れていないことがわかると思います。

「アクティブな」クラスを適用しようとしているナビゲーションがあるので、アクティブなページのスタイルを変えることができます。before_filter を使用して @cur_page を次のように設定しました。

def cur_page
    @cur_page = params['action']
end

「アクティブ」というテキストを単純に出力しようとしていますが、機能していません。

<li class="button <%= "active" if @cur_page == "contact" %>"><%= link_to "Contact", :public_contact %></li>

私も試しました:

<li class="button <%= puts "active" if @cur_page == "contact" %>"><%= link_to "Contact", :public_contact %></li>

インスタンス変数が設定されていることを確認したところ、期待どおりに「連絡先」が表示されています。

何か案は?

4

2 に答える 2

1

とは何:public_contactですか? current_pageを使用することをお勧めしますか? の代わりにヘルパー@cur_page

<li class="button <%= "active" if current_page?(public_contact_path(@contact) %>"><%= link_to "Contact", public_contact_path(@contact) %></li>

public_contact_path(@contact)有効なルート ヘルパーに置き換えます。

于 2012-10-16T05:25:31.393 に答える
0

問題は二重引用符にあると思います。

「active」の代わりに「active」を使用「contact」の代わりに「contact」を使用

<li class="button <%= 'active' if @cur_page == 'contact' %>"><%= link_to "Contact", :public_contact %></li>
于 2012-10-16T05:17:38.673 に答える