Kohana 科哈纳面包屑错误
我正在使用Kohana框架在我的应用程序上实现面包屑 我有一个类别部分,内部有许多其他子类别n等等。一个名为Category.php的控制器有两个动作: 1.当我单击每个类别直到它到达最后一个子类别时调用索引$cat 2.当我单击最后一个子类别,即叶节点时调用类别$cat 我将代码写入这两个动作的方式是:Kohana 科哈纳面包屑错误,kohana,helper,breadcrumbs,Kohana,Helper,Breadcrumbs,我正在使用Kohana框架在我的应用程序上实现面包屑 我有一个类别部分,内部有许多其他子类别n等等。一个名为Category.php的控制器有两个动作: 1.当我单击每个类别直到它到达最后一个子类别时调用索引$cat 2.当我单击最后一个子类别,即叶节点时调用类别$cat 我将代码写入这两个动作的方式是: Breadcrumbs::add(Breadcrumb::factory()->set_title("Home")->set_url(url::site()));
Breadcrumbs::add(Breadcrumb::factory()->set_title("Home")->set_url(url::site()));
Breadcrumbs::add(Breadcrumb::factory()->set_title("Categories")->set_url(url::site('categories')));
if($cat != NUll) {
Breadcrumbs::add(Breadcrumb::factory()->set_title($cat)->set_url(url::site('categories/' .$cat )));
}
$actual = Breadcrumbs::get();
$view->breadcrumbs = $actual;
问题是它只显示了三个级别。如何将其扩展到第四级或更高级别。
例如:家>分类>文具>衣服。如何保存以前的$actual值
因此,当我单击dress时,会调用索引操作并用
home>category>dress,因为参数“$cat=dress”。我认为这与所提到的插件没有多大关系 您只是使用类别名称字符串,一个简单的字符串甚至不知道什么是类别,不知道它的名称是什么,以及层次结构 我认为有三种选择: 从数据库中获取所有父关系,或者在存储它们的任何位置,运行一个打印面包屑的循环,直到它到达叶子。 映射您的操作,使其接受完整路径,例如index/stational/dress,并从路径参数中提取所有值,在这种情况下无需DB调用 在会话中存储具有以前值的数组,然后从该数组重新创建面包屑。这里也没有DB调用。请注意,在这种情况下,在清空数组时必须小心。这取决于你的逻辑。您必须识别树叶何时被击中,然后清空数组。