我是Kohana 3.x的新手。你想要一个Kohana的用户个人资料样式的网站。示例:加载配置文件的https://twitter.com/maronems仅传递参数maronems,而无需传递key =参数。请有人帮帮我吗?
答案 0 :(得分:2)
通过“key = parameter”我假设你的意思是http://twitter.com?user=maronems
对吗?这是丑陋,我们可以做得更好。
让我们看一下让您的网址改为http://twitter.com/maronems
。
您需要查看Kohana's routing system。
看看这条路线:
Route::set('username route', '<username>')
->defaults(array(
'controller' => 'Profile',
'action' => 'index',
));
首先,它被称为username route
,这是一个任意名称,
但是很好,因为它的意图很清楚。
接下来看一下正则表达式模式<username>
。此路由将捕获用户名并将其存储在名为username
的变量中。
现在注意路线不必指定控制器和动作。路由系统将从默认值中获取。在此示例中,您需要一个名为Controller_Profile
的控制器,其操作名为action_index
。
现在让我们看一下控制器:
<?php
class Controller_Profile extends Controller {
function action_index()
{
echo 'Hello ' . $this->request->param('username');
}
}
当然,您不应该在课程中使用这样的回音,但为了说明这一点,如果您访问example.com/maronems
,您应该会看到Hello maronems
回显。