实习小结八:创建新网页--添加路由文件

原创
2016-08-08 09:19:36 1005浏览

在创建一个新网页时,要在相应的global.php文件中添加该网页的路由,并且在controller中添加相应的action。

路由代码:

'cat-types' => array(
                'type' => 'segment',
                'options' => array(
                    'route' => '/cat/:type_name/',
                    'constraints' => array(
                        'type_name' => '[a-zA-Z0-9_-]+'
                    ),
                    'defaults' => array(
                        'controller' => 'Top10Inaction\Controller\index',
                        'action' => 'catProducts'
                    )
                )
            ),

catProductsAction代码:

public function catProductsAction()
    {
        $type_name=$this->params()->fromRoute('type_name', null);
        $sort=$this->getRequest()->getQuery('sort', null);
        $industry=$this->getTypeCollection()->getIndustryByName($type_name);
        $subject=$this->getSubjectCollection()->getSubjectsByIndustry($industry);

        $type=$this->getTypeCollection()->getTypeByName($type_name);
        $display_name=$type->display_name;

        $default_sort=array('price','overall_score');

        if($this->isMobile()) {
            $this->layout('layout/mobile');
            $view=new ViewModel(array(                
            ));
            $view->setTemplate('mobile/cat-products');
            return$view;
        } else {          
            $product_groups=array(); 
            if(!(in_array($sort, $default_sort))) {
                $sort='overall_score';
            }
            $sortby=array($sort=>-1);
            $condition=array('type_name'=>$type_name);
            $products=$this->getProductCollection()->getPaginator('product', array(
                'condition'=>$condition,
                'sortby'=>$sortby,
                ));
            $products->setItemCountPerPage(0); 
            $totalItemCount=$products->getPages()->totalItemCount;

            $view=new ViewModel(array(
                'type_name'=>$type_name,
                'products'=>$products,
                'industry'=>$industry,
                'subject'=>$subject,
                'totalItemCount'=>$totalItemCount,
                'display_name'=>$display_name,
            ));

            $view->setTemplate('index/cat-products');
            return$view;
        }
    }

上面的$view->setTemplate中的内容就是需要创建的cat-products.phtml文件,在其中写入布局之类的。

以上就是创建新网页的具体步骤。

版权声明:本文为博主原创文章,未经博主允许不得转载。

以上就介绍了实习小结八:创建新网页--添加路由文件,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。