1

我在我的新 laravel 4 应用程序中遇到了身份验证问题。我注意到的一件奇怪的事情,这可能就是为什么当我这样做时:

var_dump(Hash::check('secret', Hash::make('secret')));

在数据库播种机(我创建哈希密码的地方)中,我得到了真实的结果。

当我直接在路由中运行相同的命令时,我得到了错误。

另外,当我做一个简单的:

var_dump(Hash::make('secret'));

直接在路线上它仍然是错误的。

这是坏了还是我错过了什么?

4

1 回答 1

1

你的安装有问题。这就是我得到的:

Route::get('/', function()
{
    var_dump(Hash::make('secret'));  // Gives a bcrypt string output
    var_dump(Hash::check('secret', Hash::make('secret'))); // Output true
}

您是否进行了作曲家更新,却忘记更新应用程序本身?这是目前 Laravel 4 问题的最常见原因。

该论坛帖子详细解答了如何在作曲家更新后更新主 L4 应用程序。

编辑:我会在这里发布论坛的东西——因为你需要登录到 Laravel 论坛才能看到 beta 部分:

如果你运行 composer update 后遇到问题,你很可能需要从应用程序骨架中合并更改,这是 laravel/laravel 的开发分支。

如果您最初克隆了这个存储库并且仍然与它共享 git 历史记录,您通常可以轻松地合并更改。假设您的遥控器是指向此存储库的“上游”,您可以执行以下操作:

git fetch upstream
git merge upstream/develop 

或者,您可以从开发分支中挑选单个提交,但我不会在这里介绍。

如果您最初下载了 zip 发行版或删除了上游历史记录,您仍然可以手动解决问题。查看此分支上的提交并进行应用程序中不存在的任何更改。通常,重大更改是简单的配置更改。

一旦 Laravel 4 stable 发布,这样做的频率就会大大降低,但这些变化仍然会发生。请记住,在此 beta 应用程序期间,很可能会发生重大更改。

感谢 Kindari 的论坛帖子。

于 2013-02-16T12:34:34.540 回答