2011-04-11 44 views
0

我有一个URL重写问题。来自CakePHP的远程控制器名称URL

,我现在面临的问题是,目前我们的网址是这样的:

http://www.xyz.com/sc_users/index

我不想在URL中显示的控制器名称。

有没有办法实现这一目标?

首先感谢你的家伙..

像我有8个控制器我不想在我的网址中显示的控制器名字....这就是我想要的..

要更精确的没有控制器名称在我的网址

回答

0

你需要阅读约CakePHP routing,看看'定义路线'下的例子。请更新您的问题,让其真正喜欢您的网址,以便我们能够更有效地帮助您。

+0

首先感谢您guys..Like我有8控制器我不希望控制器名称显示在我的网址....这是我想..更准确 – Madhu 2011-04-11 12:58:04

1

您可以在app/config/routes.php中定义自定义路线。您可以在CakePHP菜谱下的Defining Routes下找到所有关于路由的信息。例如,一个自定义的路由可以是这样的:

Router::connect(
    '/the_url_you_want_to_use/*', array('controller' => 'sc_users', 'action' => 'index') 
); 
0

这很简单: 有一个叫routes.php文件在/ config目录下的文件: 你可以做URL重写的东西有这样的:

Router::connect('/pages/*', array('controller' => 'cmsPage', 'action' => 'render')); 

你可以通过更加复杂的变量控制器:

Router::connect('/:id-:lang-:profile-:firstName-:lastName-:profile.htm', 
    array('controller' => 'profiles','action' => 'view'), 
    array('id'=>'[0-9]*', 'lang'=>'fr','firstName'=>'[^-]*','lastNAme'=>'[^-]*','profile' => $util->keywords['profiles'][0]['fr'], 'pass' => array('id', 'lang'),'profile' => $util->keywords2['profiles'][0]['en']) 
) 

;

正如你在我经历了“通” =>阵列(“身份证”,“郎”)通过2个参数到控制器的最后一个例子见

相关问题