首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Yii2两种不同的面包屑处理方法

Yii2两种不同的面包屑处理方法
EN

Stack Overflow用户
提问于 2022-05-02 17:18:00
回答 2查看 55关注 0票数 1

我有一个gii生成的view.php页面,可以从两条不同的路径到达,但是面包屑是相同的。有人知道怎么修吗?

让我解释一下:我有一个view.php视图,它显示了所做报告的摘要,可以从两条途径达到:

  • 当我创建一个新的报告时,路径应该是HOME / CREATION /VIEW;
  • ,也来自一个显示用户发送的报告摘要的部分,因此面包屑应该是HOME /

/VIEW。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-05-02 17:37:46

from:

  • Send在每个链接上有一个查询变量,或者在重定向中手动构建
    1. ,您有两个选项可以知道它的来源。喜欢:$value = Yii::$app->request->getQueryParam('breadcumb')

  • 其他选项是获取引用者url。基于这个值,你可以把它传递给交换机。您可以使用:$value = Yii::$app->request->getReferrer().

获得推荐者的url

然后,

  1. 执行一个开关来构建链接:

开关(值){ case 'creation':$label = 'CREATION';$url = 'url_of_creation';打断;大小写‘汇总’:$label =‘汇总’;$url =‘url_of_汇总’;打断;}

然后

  1. 就这样做了:

$this->params['breadcrumbs'][] = ['label' => $label, 'url' => $url];

票数 2
EN

Stack Overflow用户

发布于 2022-05-03 07:02:56

这是一个使用match()的简短的面包屑解决方案。

代码语言:javascript
运行
复制
$this->params['breadcrumbs'][] = match($path) {
    'creation' => ['label' => 'Creation', 'url' => Url::to['creation'],
    'summary' => ['label' => 'Summary', 'url' => Url::to['summary'],
};

$path应该在控制器中设置或由Yii::$app->request->getReferrer()确定。

请注意,这需要PHP8。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72090139

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档