2016-11-26 110 views
0

我有下面的代碼,它發送一個passowrds恢復郵件:Laravel密碼恢復模板

public function recovery(Request $request) 
    { 
     $validator = Validator::make($request->only('email'), [ 
      'email' => 'required' 
     ]); 

     if($validator->fails()) { 
      throw new ValidationHttpException($validator->errors()->all()); 
     } 

     $response = Password::sendResetLink($request->only('email'), function (Message $message) { 
      $message->subject(Config::get('boilerplate.recovery_email_subject')); 
     }); 

     switch ($response) { 
      case Password::RESET_LINK_SENT: 
       return $this->response->noContent(); 
      case Password::INVALID_USER: 
       return $this->response->errorNotFound(); 
     } 
    } 

,我發現了使用下面的模板:resources/views/auth/emails/password.php

這是一個空白文件。

如何從此模板訪問令牌?

是不是有任何內置視圖使用laravel?

回答

0

您的問題中的功能不會返回view

此外,我不熟悉那個問題的視圖的路徑。你使用的是哪個版本的Laravel?

無論如何,您可以從數據庫中獲取重置token,就像數據庫中的任何其他值一樣。例如。從控制器返回一個視圖:

$user = User::find(Auth::id()); 
$remeber_token = $user->remember_token; 
return view('to_your_view.blade.php', compact('remember_token'); 

然後在視圖文件:

{{ $remember_token }} 

這將輸出它,沒有必要使用echo或任何東西。

但是,您粘貼到您的問題的功能不是一個返回視圖的函數,所以我不知道在哪裏告訴你把上面的代碼。至少在Laravel 5.3中,您對Laravel有一個內置視圖的觀點,至少,我認爲您想要的視圖將位於`resources/views/auth/passwords /'內。

+0

它不返回一個視圖,我對這個URL做POST請求。此模板是發送給用戶的電子郵件模板。我只使用laravel作爲服務器(不是客戶端) – TheUnreal

+0

噢好吧。儘管如此,它是通過控制器「拉進」的?如果您將我的代碼粘貼到控制器中,然後這是視圖文件「{{$ remember_token}}」,它不起作用嗎? –

+0

我用戶表中的'remember_token'是空的,但我有另一個名爲'password_resets'的表,其中'email |令牌| created_at'。是的,這個方法在我的AuthController中 – TheUnreal