是否可以动态地通过Controller扩展Yii URL路由和规则,或者通过扩展CController类本身?
我真的很困惑,没有尝试过任何事情。
如何在/用Yii进行此操作?
答案 0 :(得分:4)
首先,您应该了解用于以下内容的URL规则:
urlManager
组件解析路由的URL,以便Yii可以在特定的控制器和模块中调用正确的操作。 createUrl()
创建网址。考虑到上面的(1),很明显,如果要在应用程序中使用这些URL,则可以不在控制器中添加URL规则。现在已经太晚了,因为Yii已经完成了解决路线请求的过程。即使您只想创建URL,它也没有多大意义,因为您的应用程序永远无法理解它们。
为网址解析/创建带来更多动态的正确方法是使用自定义网址规则类。在那里,您可以编写要创建的任何代码,甚至可以解析最复杂的URL。主题是described in the manual。