无法记录在Laravel 5

时间:2017-07-09 15:31:03

标签: php laravel laravel-5

我在使用播种机创建的用户进行Laravel 5日志记录时出现问题。使用他的角色和权限正确创建用户,我只是无法登录他。我认为这可能是因为用户令牌,但我不知道如何解决这个问题......这是播种代码:< / p>

if ($this->command->confirm('Do you wish to refresh migration before seeding, it will clear all old data ?')) {
        // Call the php artisan migrate:refresh
        $this->command->call('migrate:refresh');
        $this->command->warn("Data cleared, starting from blank database.");
    }

    //create a user
    $mainAdmin = User::create([
        'name' => 'Alex',
        'email' => 'someadress@example.com',
        'password' => bcrypt('password'),
    ]);

    //create a role of admin
    $admin = Role::create([
        'name' => 'admin',
        'display_name' => 'Admin',
        'description' => 'Only one and only admin',
    ]);

    //create a permission for role
    $manageUsers = Permission::create([
        'name' => 'manage-users-roles-and-permissions',
        'display_name' => 'Manage Users,Roles and Permissions',
        'description' => 'Can manage users,roles and permission"s',
    ]);

    //here attaching permission for admin role
    $admin->attachPermission($manageUsers);

    //here attaching role for user
    $mainAdmin->attachRole($admin);

这是登录表单,它是标准的laravel登录表单,没有触及它。

<form class="form-horizontal" role="form" method="POST" action="{{ route('login') }}">
   {{ csrf_field() }}

   <div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
   <label for="email" class="col-md-4 control-label">E-Mail Address</label>

  <div class="col-md-6">
      <input id="email" type="email" class="form-control" name="email" value="{{ old('email') }}" required autofocus>

      @if ($errors->has('email'))
         <span class="help-block">
             <strong>{{ $errors->first('email') }}</strong>
         </span>
      @endif
 </div>
 </div>

 <div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
 <label for="password" class="col-md-4 control-label">Password</label>

<div class="col-md-6">
    <input id="password" type="password" class="form-control" name="password" required>

    @if ($errors->has('password'))
        <span class="help-block">
          <strong>{{ $errors->first('password') }}</strong>
        </span>
    @endif
</div>
</div>

<div class="form-group">
   <div class="col-md-6 col-md-offset-4">
       <div class="checkbox">
            <label>
                <input type="checkbox" name="remember" {{ old('remember') ? 'checked' : '' }}> Remember Me
            </label>
       </div>
   </div>
 </div>

 <div class="form-group">
     <div class="col-md-8 col-md-offset-4">
         <button type="submit" class="btn btn-primary">
                                Login
        </button>

       <a class="btn btn-link" href="{{ route('password.request') }}">
          Forgot Your Password?
      </a>
    </div>
  </div>
</form>

希望有人可以帮助我弄清楚这个问题我真的坚持了它!

1 个答案:

答案 0 :(得分:3)

你正在使用user:create()并在其上散列密码,因为默认的Laravel user:create()会在将密码插入数据库之前两次哈希密码时自动哈希。

我建议你离开password=> 'password'删除并再次运行播种。