问题标签 [zend-controller-router]

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 回答
836 浏览

zend-framework - Zend 1.9 作为子域的语言

我正在使用 Zend 1.9 并希望将语言参数作为子域。

喜欢:http ://en.site.com

是否可以在 .htaccess 中获取语言并将其设置为我可以在 Zend 中使用的环境变量?

实现我想要的最好方法是什么?

- 添加 - :

我将此添加到我的 routes.ini 中:

如果我去:http ://en.domain.com/details/joe,这很好用 但不幸的是,如果我删除子域:http ://domain.com/details/joe默认操作不会被调用,我得到

消息:动作“joe”不存在并且没有被困在 __call()

你有想法吗 ?

多谢你们。

蒂埃里

0 投票
1 回答
305 浏览

php - Zendframework 路由问题

我一直在我的 application.ini 文件中设置我的路线,该文件适用于我设置的所有路线。问题是当该控制器中有多个操作并且我尝试在其他操作中使用路由时。

例如,我在 application.ini 中为分页和列排序创建了以下内容

当我在该页面的默认操作上时,上述方法有效

会调出结果的第二页。但如果我在另一个动作上尝试同样的动作,

它只是显示一个空白页。我尝试在 ini 中创建自己的设置,但没有奏效。我以前遇到过这个问题,但通常只是放弃并将事物分成不同的控制器,但我宁愿采取不同的行动。

任何帮助将非常感激。

马特

0 投票
1 回答
1401 浏览

zend-framework - Zend_Controller_Router_Route_Hostname 和附加变量

我在最后使用另一个变量链接一些路由时遇到问题。我正在使用通配符子域。像这样:http://eric.mysite.dev/mypage1 mypage1 将是一个 GET 变量。所以我想要的是http://mysite.dev/donate/now/index/id/eric/pagename/mypage1

如果没有这样的页面名称,我可以正常工作:

但我也想要页面名称,所以我尝试了这个但它不起作用:

我收到以下应用程序错误:消息:找不到资源“默认:mypage1”

堆栈跟踪:0 /Applications/MAMP/bin/php5/lib/php/ZendFramework-1.9.6/library/Zend/Acl.php(751): Zend_Acl->get('default:mypage1') 1 /Applications/MAMP /htdocs/mysite/application/modules/default/plugins/AccessCheck.php(15): Zend_Acl->isAllowed('guest', 'default:mypage1', 'index') 2 /Applications/MAMP/bin/php5/lib /php/ZendFramework-1.9.6/library/Zend/Controller/Plugin/Broker.php(309): Plugin_AccessCheck->preDispatch(Object(Zend_Controller_Request_Http)) 3 /Applications/MAMP/bin/php5/lib/php/ZendFramework- 1.9.6/library/Zend/Controller/Front.php(933): Zend_Controller_Plugin_Broker->preDispatch(Object(Zend_Controller_Request_Http)) 4 /Applications/MAMP/bin/php5/lib/php/ZendFramework-1.9.6/library/Zend /Application/Bootstrap/Bootstrap.php(77): Zend_Controller_Front->dispatch() 5 /Applications/MAMP/bin/php5/lib/php/ZendFramework-1.9.6/library/Zend/Application.php(358): Zend_Application_Bootstrap_Bootstrap->run() 6 /Applications/MAMP/htdocs/mysite/ public/index.php(34): Zend_Application->run() 7 {main}

请求参数:数组('controller' => 'mypage1', 'action' => 'index', 'module' => 'default', )

0 投票
2 回答
3103 浏览

design-patterns - 使用 OOP 在 PHP 中编写/设计 URL 路由器的技巧

我喜欢 Zend_Controller_Router_Rewrite 的优雅以及它使用的各种路由类。

我想编写一个非常相似的路由系统作为独立组件,这样我就可以将 URL 转换为一组参数并将它们重新组合起来。这个想法是使用它们来选择,例如,基于每个路径的 URL 规范化处理程序。

我考虑过扩展实际的 Zend Controller Route 类来制作我自己的。但是,这些类在 Zend MVC 的领域语言中似乎非常深入(如果你原谅双关语的话)。

您知道可在我的项目中使用的独立路由包/类集吗?

如果我自己编写,zend 路由器是我可以使用的任何特定设计模式的示例吗?

你对编写 URI 路由器有什么建议吗?

0 投票
2 回答
866 浏览

zend-framework - Zend_Controller_Router:从翻译段中获取语言

我想在我的网站上使用 URL 重写:

所以我想在路线上使用翻译的段,我想从这些翻译的段中检测请求的语言。例如,如果用户请求这样的 url:

然后我可以理解所要求的语言是英语。如果用户请求这样的网址:

然后我可以理解请求的语言是土耳其语。我怎样才能用 Zend_Controller_Router 做到这一点?

0 投票
1 回答
1577 浏览

zend-framework - 如何在 Zend 框架的 ini 文件中编写 ... of 路由链的链?

我正在尝试使用 Zend 框架的 INI 文件定义如下路由: http://api.example.com/servicename/ {version}/users/:userid/items/:itemid

host-api 路由工作正常,但是当我尝试到达其他路由时,我收到错误“没有与请求匹配的路由”

chains.something.chains.somethingelse看起来很尴尬,所以它可能不是正确的方法。任何人?

0 投票
1 回答
4410 浏览

zend-framework - 使用 Zend_Controller_Router_Route 为 IndexController 中的操作创建友好的 URL

在我的 IndexController 中,我目前有 indexAction(主页)、loginAction 和 logoutAction。我正在尝试从 URL 中删除“/index/”以获取 domain.com/login 而不是 domain.com/index/login。

实现这一目标的最干净的方法是什么?有我们可以使用的正则表达式吗?我不希望 /index/ 在 URL 中。

我认为可以改进的当前解决方案如下。另外,addRoute() 中的第一个参数是做什么的?

0 投票
1 回答
698 浏览

php - Zend Router 各种 URL

我想用 ZF 路由器实现这样的目标。( 'controller' => 'products', 'action' => 'index')

我是否必须将每种可能性指定为单独的路线?还是有更好的解决方案?(使用Route_Regex?)

0 投票
1 回答
1367 浏览

zend-framework - Zend_Controller_Router_Route:找不到翻译器

我正在开发一个多语言应用程序。在引导程序中有路由设置:

}

我无法将默认翻译器设置为 Zend_Controller_Router_Route(用于翻译的段),因为我不知道请求对象中的语言参数。我在“routeShutdown”期间获得多语言插件中的语言参数:

当我输入地址“ http://servername/it/utenti/registrati ”时,我收到异常消息“找不到翻译器”。

我该如何解决?安东尼奥(意大利)

0 投票
2 回答
3076 浏览

regex - 可选参数 Zend Route Regex

如何使用 Zend 使路由正则表达式参数可选?

我尝试为搜索过滤器制作格式良好的 URL(“search?s=mp&t=w”而不是“search/index/s/mp/t/w”),例如。:

人气

  • 最受欢迎 (s=mp)
  • 观看次数最多(s=mv,默认)
  • 评分最高 (s=tr)
  • 最多评论 (s=mc)

时期

  • 所有期间(t=a,默认)
  • 今天(t=d)
  • 本周 (t=w)
  • 本月 (t=m)

所以,要从今天起获得所有评分最高的项目,我将拥有:search?s=tr&t=d

使用正则表达式路由,我必须指定默认值,问题是 url 视图助手生成具有默认值而不是当前值的链接。

这是我的路线:

和链接:

例如,如果当前页面是“search?s=tr&t=d”并且我点击“This week”,则链接是:“search?s=mv&t=w”而不是“search?s=tr&t=w”,因为的默认值。

我必须指定默认值,否则会出错。

任何想法 ?

谢谢,本杰明。