cakephp url重写在路由器文件中无法正常工作

用户名

我在重写cakephp URL时遇到了一些问题

这是我的网址:

domain.com/users/members/mygroup
domain.com/users/admins/mygroup

我想改写成

domain.com/mygroup/members
domain.com/mygroup/admins

我已经尝试了以下代码,但无法正常工作在routes.php中,我创建了以下路由

Router::connect('/:groupname/:members', array('controller' => 'users', 'action' => 'members'),array('pass' => array('groupname')));

Router::connect('/:groupname/:admins', array('controller' => 'users', 'action' => 'admins'),array('pass' => array('groupname')));

这里是链接:

<?php echo $this->html->link('Members',array('controller'=>'users','action'=>'members','groupname'=>$groupdata['Group']['group_slug'],'members'=>members),array('escape'=>false,'class'=>'links','id'=>'memlink'));?>


<?php echo $this->html->link('Admin',array('controller'=>'users','action'=>'admins','groupname'=>$groupdata['Group']['group_slug'],'admins'=>admins),array('escape'=>false,'class'=>'links','id'=>'admnlink'));?>

当我创建这样的路由时,第一个路由(即成员路由)工作正常,但是第二个路由管理员无法正常工作,这是在选择成员操作并执行members方法,但URL看起来正确,只有该操作是错误的。

我该如何解决。

阿尼尔·库玛(Anil Kumar)

试试这个。

Router::connect('/:groupname/:members', array('controller' => 'users', 'action' => 'members'),array('pass' => array('groupname', 'members')));

Router::connect('/:groupname/:admins', array('controller' => 'users', 'action' => 'admins'),array('pass' => array('groupname', 'admins')));

更新

Router::connect('/:groupname/:action', array('controller' => 'users'),array('pass' => array('groupname')));
Router::connect('/:groupname/:action', array('controller' => 'users'),array('pass' => array('groupname')));

对我来说工作正常,将这样的代码放进去,

echo $this->html->link('Members',array(
    'controller'=>'users','action'=>'members',
    'groupname'=> 'mygroup'), array(
        'escape'=>false,'class'=>'links','id'=>'memlink'
));
 echo $this->html->link('Admin',array(
    'controller'=>'users','action'=>'admins',
    'groupname'=> 'mygroup'),array(
        'escape'=>false,
        'class'=>'links','id'=>'admnlink'
));

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章