问题标签 [zend-navigation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
396 浏览

zend-framework - 如何创建 Zend_Navigation 虚拟节点 - Zend Framework 1.11.4

我正在尝试在 Zend_Navigation 树中创建一个节点,该节点仅用于组织其中的链接。因此它在渲染时不需要锚标记并且不会显示在面包屑中。有谁知道如何做到这一点?

0 投票
3 回答
4353 浏览

php - Zend Navigation(面包屑)不显示

我在使用 Zend_Navigation 显示面包屑时遇到问题。

我有一个控制器,它接受一个参数来从数据库中查询出文章。因此,如果您指向“articles/view/id/3”,它将返回 id 为 3 的文章。我遇到的问题是面包屑在此逻辑下工作。理想情况下,当转到“articles/view/id/3”时,我希望面包屑是:“Articles > Article_Name”

我的代码很好地呈现导航和子导航,它只是在面包屑上失败,目前没有显示任何内容。

这是我的代码:

1) XML 格式的站点导航,如下所示:

2)导航(在布局中):

3)面包屑(在文章控制器中):

4)面包屑(在布局中):

提前感谢您的帮助!

0 投票
1 回答
513 浏览

zend-framework - 模块中的 Zend Framework menu.xml 抛出异常

通常我在 Zend_Navigation 的 configs 文件夹中有一个导航文件 menu.xml。

现在,当我把它放在 modules/module-name/configs/ 中时,我得到了错误:

在 /blah/blah/blah/menu.xml 中找不到“生产”部分

我知道 [production] 是配置 ini 文件的部分,我是否也需要它在 xml 中?我错过了一些非常明显的东西吗?我如何在模块目录中有导航 xml 文件(以保持模块独立)?

0 投票
2 回答
4501 浏览

php - 如何从控制器插件中的 Zend_Navigation 检索当前页面

我正在使用控制器插件开发身份验证插件。我在 application.ini 文件中定义我的导航配置,然后使用它和数据库用户记录来动态加载 ACL 并将其应用到 Zend_Navigation。此位有效,因为它成功加载了菜单并且仅显示允许用户查看的页面。

但是,这不会阻止用户直接访问该页面。我想要做的是确定用户何时访问他们在控制器插件中无权访问的页面,以便我可以将他们的请求重定向到身份验证页面。

我在想一定有一个函数可以从 Zend_Navigation 检索当前页面,但我找不到它......所以它可能不存在。

无论如何,这是我完整的控制器插件。有人看到解决方案吗?

0 投票
2 回答
542 浏览

php - 我应该在哪里填充我的 Zend_Navigation 容器?

我应该在我的应用程序的什么位置定义我的顶层和底层页面以供 Zend Navigation 使用?我的顶级导航栏视图助手将与生成子导航的视图助手分开。

0 投票
2 回答
2751 浏览

php - Zend Navigation:我应该在哪里加载私有应用程序中的 ACL“角色”

我正在开发一个“私人”应用程序,您必须登录才能执行任何操作。这让我在为 Zend Navigation 加载角色时遇到了一些问题。目前,我正在引导程序中“初始化 Zend Navigation”;这很好,直到我将 ACL 添加到 Zend Nav。问题是我想从我的身份验证存储中加载“userRole”,但在用户登录之前不会有存储,所以在登录页面上会出现“尝试获取非对象的属性”警告. 这是因为在登录之前,auth 的存储中没有任何内容,auth->userRole“nothing”也是如此,因为auth->getInstance()->getIdentity()->???它将是空的,直到用户登录并配置了 auth。

我没有在登录页面使用 Zend Nav,事实上我有一个用于登录页面的替代布局(根本没有导航);'if !$auth->hasIdentity'(false) 使用登录布局,只在系统范围内显示登录页面,正如我所说的应用程序是完全私有的,所以默认为“访客”角色或类似的东西似乎是一种“肮脏”的方法,因为一旦无论如何,用户登录它都必须重新配置身份验证。只是为了取悦登录页面而设置通用身份验证身份似乎并不正确。

我得到的是,哪里是移动 Zend Nav 的“init”的好地方,或者至少移动配置 ACL 部分?也可以移动整个东西?

这就是我在 Zend Navigation 的 bootstrap.php 中的内容:

在引导程序运行时它'$role = Zend_Auth::getInstance()->getIdentity()->userRole'是空的(或非对象)。

我所有的 ACL 都发生在控制器中(在动作中),或者有些可能在某个时候发生在模型中,尽管我不期待 Web 服务或任何东西,所以也许它们会留在控制器中,但我有灵活性,因为我在模型中有 ACL(那将是“域”对吗?

我只在 Zend Nav 上使用 ACL 来进行布局、用户体验;根据用户角色,我从 Zend Nav 获得的菜单和链接将显示为“灰色”、不存在或活动(且可见),例如,“用户”角色不会获得很多“管理员”选项,这是由控制器中的 ACL 重新实施,因此人们也不能简单地输入 url 并进入一个区域。

我的另一个想法是,也许我应该考虑将我的登录名转移到这种情况下的引导程序中,但我也不确定这是否是个好主意?


编辑: 这是我放入前端控制器插件的代码:

效果很好;当然,我必须像其他任何插件一样注册我的插件。我也将我的 Auth 检查移至前端控制器插件。

0 投票
2 回答
623 浏览

php - Zend_Navigation_Page_Mvc 和片段标识符

Zend_Navigation在我的网站上使用。大多数项目是Zend_Navigation_Page_Mvc而不是Zend_Navigation_Page_Uri。我知道我可以轻松地将片段标识符添加到Zend_Navigation_Page_Uri项目中,但这不是我正在寻找的优雅解决方案。这篇文章有几个解决方案,但它们扩展了 URL 助手并且不影响导航。

我已经使用子类Zend_View_Helper_Navigation_Menu来呈现菜单。也许有一种方法可以用这个htmlify()功能来完成这个?

0 投票
2 回答
456 浏览

zend-framework - Zend Navigation,我如何将它与 url 中的参数一起使用?我在导航中使用参数进行了尝试,没有更改:(

我的zend导航有问题。我使用 zend 导航,当我在 url 中调用类似这样的内容时它可以:

但我想用这样的一些参数调用该站点:

我尝试设置一些参数,但这不起作用。

我将导航放在引导程序中,并在我使用它的布局中。它是一个带有一些面包库的导航,其中 display:true 和 display:false。这是我的引导程序中的代码:

以及 layout.phtml 中的代码。在此代码中,我显示是否显示面包屑。

希望有人可以帮助我!谢谢大家!最好的问候汤姆

0 投票
2 回答
1360 浏览

php - Zend Navigation (Container) - removePage() 不是递归的

Zend_Navigation延伸Zend_Navigation_Container。、和函数都递归搜索页面,但findOneBy()不是。这意味着仅当它是根级导航节点时才有效。有没有其他人遇到过这个并找到了解决方法?findAllBy()findBy()removePage()$navigation->removePage($navigation->findOneBy('id', 'page_10'));page_10


我找到了自己的解决方案,并接受了其中一个作为我实施它的方式。如果它比我的更好,我会从其他人那里选择一个解决方案。

0 投票
1 回答
1121 浏览

zend-framework - 如何设置课程
    zend_navigation 中多级子菜单中的标记

我正在使用 xml 文件在 zend 框架应用程序中创建我的导航。我有一个像这样的多级菜单:

该标签呈现为一个 ul 标签,它包裹着一堆 li。整体 ul 被赋予一个 class="navigation"。我想要做的是能够将类属性分配给子 ul 标签,与树一样多的级别。已经为此苦苦挣扎了一段时间。