【发布时间】:2012-10-30 13:57:24
【问题描述】:
这里是 kohana 的新手。我的实习任务是使用 kohana 框架 3.2 制作登录系统。我还使用自动建模器 ORM 插入、更新和删除内容。我现在在使用 kohana auth 时遇到了一些麻烦。我已经导入了数据库结构,并在“users”表中插入了一个用户,并在“roles_user”表中给他一个角色。
还在 APP/config/ 中创建了一个 Auth.php 文件:
return array(
'driver' => 'AutoModeler_ORM',
'hash_method' => 'sha256',
'hash_key' => 'Somebiglonghaskeyofmixedcharacters102345567709',
'lifetime' => 1209600,
'session_type' => Session::$default,
'session_key' => 'auth_user',
);
在我的控制器中,我有一个登录功能,代码如下:
if ($_POST)
{
$post = $this->request->post();
$success = Auth::instance()->login($post['email'], $post['password']);
if ($success)
{
echo "Welcome!";
}
else
{
echo "Something goes wrong...";
}
}
我已经激活了引导程序中的模块。
pastebin 链接到我的榜样:http://pastebin.com/bQYReETh pastebin 链接到我的用户模型:http://pastebin.com/ufzvKjmA
问题是我总是在else中进来。
有人知道发生了什么吗? 我错过了什么吗?
【问题讨论】:
-
您遇到的错误是什么?从问题中不清楚您到底遇到了什么问题。
-
错误是我总是通过 $succes 进入 else 语句。谢谢你这么说。我已经编辑了我的问题。
-
当 Auth 调用
$this->_login()时,很可能在模型的查询中找不到用户。 -
另外,该用户是否可以登录? $can_login =
Auto_Modeler_ORM::factory('user', 'Foo')->has('role', 'login'); -
感谢大人的评论!我还在这里找到了一些信息:dev.kohanaframework.org/projects/automodeler/wiki/Auth。我不明白功能的 $can_login 有什么?如果我是对的,我创建一个模型并检查他的角色?但是我可以在哪里使用它?我只创建一个未使用的变量?希望有人能解答
标签: authentication kohana kohana-orm kohana-3.2 kohana-auth