【发布时间】:2011-01-26 13:32:08
【问题描述】:
也许不是最好的解释,但请听我说完。假设我在一个名为 menu.php 的配置文件中有以下内容:
// Default controller is 'home' and default action is 'index'
return array(
'items' => array(
'Home' => '',
'News' => 'news',
'Resources' => 'resources',
),
);
我现在想把它打印成一个菜单,这很简单:
foreach(Kohana::config('menu.items') as $title => $uri)
{
echo '<li>' . HTML::anchor($uri, $title) . '</li>';
}
但是,我想找到与当前控制器和操作匹配的$uri。并且该操作是否为默认操作。我想要结束的是菜单项应该有id="active-item",如果它是链接到当前控制器,但默认操作。 id="active-subitem 如果它链接到当前控制器并且该操作不是默认操作。希望这是有道理的......
有人能帮我吗?在 Kohana 3 中如何做到这一点以及在 Kohana 3 中如何应该做到这一点。我相信有很多方法,但是是的......欢迎任何帮助 :)
例子:
- domain.com -- Home 应该是 active-item 因为它是默认控制器
- domain.com/home -- Home 应该是 active-item
- domain.com/home/index -- Home 应该是 active-item 因为 index 是默认操作
- domain.com/resources -- Resources 应该是 active-item
- domain.com/resources/get/7 -- Resources 应该是 active-subitem 因为 get 不是默认操作李>
【问题讨论】: