0

次の場合に最適なアプローチを提案してください: サブメニューのアプローチ: submenu1、submenu2 などの異なるサブメニューがあります (各サブメニューには独自のタブ オプションがあります)。ページごとにサブメニューを表示したいということは、開いているページに応じてサブメニューを分割することを意味します。

What I am planning for this:
<% content_for(:menu) do %>
    <%=  render :partail => "submanu" %>
<% end %>

and calling that section by <%= yield(:menu) %>

ありがとう

4

1 に答える 1

0

コントローラーのヘルパー メソッド「show menu」とハッシュに基づいて、同様のものを実装しました。あなたの場合、私は次のようなものを提案します:

def show
@menu = [{title: "menu.pages.one", controller: "pages", action: "one"},
{title: "menu.test.two", controller: "test", action: "two"}]
end

次に、各メニュー項目を表示し、次のようなリンクを作成するヘルパー メソッドと組み合わせることができます。

link_to t(item[:title]), :controller => item[:controller], :action => item[:action]

ヘルパー メソッドを使用して、haml レイアウト foreach リンクを作成しましたが、パーシャルも使用できます。したがって、各コントローラー/メソッドで、自明の拡張可能なメニューを作成できます。

于 2012-10-20T10:04:27.403 に答える