我似乎无法让哨兵工作.我一直收到此错误:没有为用户提供哈希.有谁知道会发生什么?
原文链接:https://www.f2er.com/php/135765.html我在OS X 10.9上运行MAMP.
我使用的是PHP 5.4.4
已安装并启用MCrypt.
尝试在创建新用户时散列密码时会发生此错误.
我们的项目使用laravel Sentry插件.
这是控制器:
<?PHP use Auth,BaseController,Form,Input,Redirect,Sentry,View; class AuthController extends BaseController { public function register() { return View::make('Auth.register'); } public function handleRegister() { $validator = Validator::make(Input::all(),User::$rules); if ($validator->passes()) { //The registration has passed,create a user $user = new User; $user->first_name = Input::get('first_name'); $user->last_name = Input::get('last_name'); $user->email = Input::get('email'); $user->password = Hash::make(Input::get('password')); $user->activated = 1; $user->save(); //grabbing the Sentry model of the user so we can save it to the appropriate group $sentryUser = Sentry::findUserByLogin($user->email); if (Input::get('userType') == 'Promoter') { $group = 'Promoters'; } else { $group = 'Agents'; } // Find the group using the group id $group = Sentry::findGroupByName($group); // Assign the group to the user $sentryUser->addGroup($group); return Redirect::action('AuthController@login')->with('message','Thanks for registering!'); } else { // validation has Failed,display error messages return Redirect::action('AuthController@register')->with('message','The following errors occurred')->withErrors($validator)->withInput(); } } /** * Display the login page * @return View */ public function login() { return View::make('Auth.login'); } /** * Login action * @return Redirect */ public function handleLogin() { $credentials = array( 'email' => Input::get('email'),'password' => Input::get('password') ); try { $user = Sentry::authenticate($credentials,false); if ($user) { return Redirect::action('OfferController@offer'); } } catch(\Exception $e) { return Redirect::action('AuthController@login')->withErrors(array('login' => $e->getMessage())); } } /** * logout action * @return Redirect */ public function logout() { Sentry::logout(); return Redirect::action('AuthController@login')->with('message','You have been logged out'); } } ?>