我正在开发Kohana PHP框架。
我想在我的网址中显示'用户名'而不是控制器名称。
例如,
username = james然后如何显示
而不是
http://localhost:3000/scrapbook/index => ... localhost:3000 /剪贴簿
(控制器:剪贴簿,动作:索引)
在网址中。
我的引导程序文件包含此类网址的条目。如果我手动编写..//localhost:3000/james,它会将我带到请求的页面。
//Viewing a user's profile or account details - user/action
Route::set('profile', '(<username>(/<action>(/<id>)))',
array(
'username' => '([A-Za-z0-9\-]+)'))
->defaults(array(
'controller' => 'scrapbook',
'action' => 'index'));
我想要的是如果我手动登录并转到剪贴簿,我的网址应该显示'用户名'而不是控制器的名称。如果有人能指导我,我将不胜感激。 感谢
答案 0 :(得分:3)
完成登录操作后,您需要使用反向路由将用户重定向到所需的网址:
// ...in your controller
function action_signin()
{
// ...sign in logic
$this->request->redirect(
Route::get('profile')->uri(array(
'username' => $username
))
);
}
$username
将是登录用户的用户名,只需登录即可。