0

这里是 kohana 的新手。我的实习任务是使用 kohana framework 3.2 制作登录系统。我还使用自动建模器 ORM 插入、更新和删除内容。我现在在使用 kohana auth 时遇到了一些麻烦。我已经导入了数据库结构,并在“用户”表中插入了一个用户,并在“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

问题是我总是进来。

有人知道发生了什么吗?我错过了什么吗?

4

1 回答 1

2

@伍德,

也许添加 _constructor 会有所帮助。

public function __construct($id = NULL)
    {
        if ($id !== NULL)
        {
            $this->load(db::select_array($this->fields())->where($this->_table_name.'.username', '=', $id));
        }
        elseif ($this->id) // We loaded this via mysql_result_object
        {
            parent::__construct($id);
        }
    }
于 2012-11-06T11:12:31.040 回答