【问题标题】:change url zend更改网址 zend
【发布时间】:2011-08-27 04:36:55
【问题描述】:

class ContactusController extends Zend_Controller_Action 结果为url/contactus。我喜欢更改url/contact-us。如何在网址中添加“-”。请帮我找出解决办法

【问题讨论】:

    标签: zend-framework url url-rewriting url-routing


    【解决方案1】:

    您可以通过 Zend_Router 添加路由来做到这一点。

    $router = $this->_front->getRouter();
    
    $router->addRoute('contactus', 
        new Zend_Controller_Router_Route('contact-us',
            array(
                'controller' => 'contactus',
                'action'     => 'index',
                'category'   => null
            )
        );
    );
    

    可以从http://framework.zend.com/manual/en/zend.controller.router.html了解更多信息

    【讨论】:

    • 对于这样一个简单的任务来说太复杂了,恕我直言。
    • @regilero 路由器是好方法,我从不说它容易学习,但是一旦你学会了它最简单的方法来快速更改 url,而不是重命名控制器并在 _forward 和 _redirect 中进行任何更改方法如果你已经申请:) .
    • 嗯,这实际上取决于您是处于开发初期还是在使用旧代码库。使用“-”为您需要的所有 url 添加路由器“异常”规则会在调度程序上添加大量处理任务,实际上可以由默认路由器规则管理。这是一种解决方法,它不是在 url 中使用“-”的经典方式。
    【解决方案2】:

    代替

    class ContactusController extends Zend_Controller_Action
    

    使用驼峰命名法:

    class ContactUsController extends Zend_Controller_Action
    

    使用U 而不是u

    你的文件名也一样,应该是controller/ContactUsController.php。那么 url 按照惯例是contact-uscontact-us/action等。

    【讨论】:

      猜你喜欢
      • 2012-01-22
      • 2015-03-04
      • 2012-09-15
      • 2014-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多