2016-06-14 64 views
0

我想要使用我通过php php artisan make:auth获得的表password_resets,但是此表使用“email”,这是不正确的,因为如果我的用户更改他们的电子邮件在他们的个人资料,然后是找出他们的问题,我想用“ID用户”表“password_resets”,而不是“电子邮件”。我如何使用密码重置(laravel 5.2)中的idUser

我在哪里可以更改此代码????

回答

0

谢谢您的回答, 终于解决了我这样做:

Dirección:...供应商/ laravel/.... DatabaseTokenRepository.php

/** 
* Create a new token record. 
* 
* @param \Illuminate\Contracts\Auth\CanResetPassword $user 
* @return string 
*/ 
public function create(CanResetPasswordContract $user) 
{ 
    $email = $user->getEmailForPasswordReset(); 
    $idUser = $user->idUser; //Aquí he añadido el idUser 

    $this->deleteExisting($user); 

    // We will create a new, random token for the user so that we can e-mail them 
    // a safe link to the password reset form. Then we will insert a record in 
    // the database so that we can verify the token within the actual reset. 
    $token = $this->createNewToken(); 

    $this->getTable()->insert($this->getPayload($idUser, $email, $token)); //Aquí he añadido el idUser 

    return $token; 
} 

/** 
* Delete all existing reset tokens from the database. 
* 
* @param \Illuminate\Contracts\Auth\CanResetPassword $user 
* @return int 
*/ 
protected function deleteExisting(CanResetPasswordContract $user) 
{ 
    return $this->getTable()->where('idUser', $user->idUser)->delete(); 
} 
0

当用户尝试重置电子邮件时,他必须提供重置电子邮件,并且如果他/她更改了电子邮件的配置文件,新电子邮件将自动更新在用户表或任何您拥有的权利?因此用户提供更新的电子邮件,如果他/她真的打算重新最新的电子邮件将被用于密码重置和电子邮件的更新不应该是一个问题,在所有的password.so。 :) :)