我正在尝试将近24小时的Laravel Auth工作。我正在尝试一个非常简单的方法:
创建用户:
$emailActivationCode = str_random(60);
$created = User::create([
'email' => 'raju@mydomain.com',
'password' => \Hash::make('raju@myhome'),
'activation_code' => $emailActivationCode,
'protected' => 1,
'activated' => 1
]);
我正在尝试下面的代码登录:
$user = \Auth::user()->attempt(array(
'email' => 'raju@mydomain.com',
'password' => 'raju@myhome',
'activated' => 1
));
我的用户模型如下:
namespace App\Models;
use Illuminate\Auth\UserTrait;
use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableTrait;
use Illuminate\Auth\Reminders\RemindableInterface;
use Jacopo\Authentication\Models\User as JacopoUser;
use Cartalyst\Sentry\Users\UserExistsException;
use Cartalyst\Sentry\Users\LoginRequiredException;
class User extends JacopoUser implements UserInterface
{
use UserTrait, RemindableTrait;
public static function boot()
{
static::setHasher(new \Cartalyst\Sentry\Hashing\NativeHasher);
}
public function fundings()
{
return $this->hasMany('App\Models\Funding', 'users_id');
}
public function projects()
{
return $this->hasMany('App\Models\Project', 'users_id');
}
}
但登录总是失败。我也看不到任何错误消息,也无法登录。我试图谷歌,但大多数解决方案都提出了我已实施的内容。
任何Laravel专家都可以提出更好的解决方案或解决这个问题吗?如果你尽快回复,那将是非常好的。
修改 似乎哈希生成的哈希:make()无效/错误。我复制了以前在另一个项目中生成的哈希,它可以很好地处理上面的代码。为什么哈希生成错误?有谁知道这些案件?
答案 0 :(得分:0)
这是一个潜在的问题
Auth::user()->attempt
尝试是Auth的一项功能,您不会返回用户模型然后尝试。
if (Auth::attempt(array(...))
$user = Auth::user();