2

我正在将 CakePHP 2.0 用于网站的一个小型管理部分。如果用户正确登录,我会将他们重定向到管理员仪表板。我这样做如下:

$this->redirect(Router::url(array('controller' => 'admin', 'action' => 'dashboard')));

重定向是正确的,但由于某种原因,它重定向到的 URL 没有正确构建。URL 的结构如下(注意 URL 中的双 [root] 部分 - 这是错误的):

http://localhost/[root]/[root]/admin/dashboard

当然,它们会显示错误,因为此控制器/操作不存在。URL 应该不在此表单中:

http://localhost/[root]/admin/dashboard

我似乎找不到确切的问题,因为 cakePHP 不是我的核心甜点,有没有人可以指出我正确的方向?

谢谢!

4

4 回答 4

0

你可以这样简单

$this->redirect(array('controller' => 'admins', 'action' => 'dashboard'));
于 2012-11-20T13:17:08.460 回答
0
$this->redirect("YOUR URL");

example $this->redirect('/admins/dashboard');

这样您就可以轻松重定向!

于 2013-12-30T10:32:12.977 回答
0

您可以在 Router::url 中使用 'full_base' 参数。例如

$url = Router::url( array( 
    'controller' => 'posts',
    'action' => 'view',
    'id' => $post[id],

    'full' => true
    ) );

这将为您提供完整的基本网址。当我在 localhost 的子目录中运行 CakePHP 时,我发现了这个固定的路由问题。

于 2013-12-30T08:53:43.360 回答
0

你可以简单地纠正这个
Router::connect('/', array('controller' => 'users', 'action' => 'index'));

于 2020-02-14T05:26:53.183 回答