Слишком мало аргументов передано с помощью Mail :: raw (), Laravel - PullRequest
0 голосов
/ 01 мая 2018

Я получаю эту ошибку:

"Type error: Too few arguments to function App\Http\Controllers\PageController::App\Http\Controllers\{closure}(), 1 passed and exactly 2 expected"

Для этого небольшого фрагмента кода:

public function contact(Request $request)  {
    Mail::raw($request->message, function($message, $request)
     {
         $message->from($request->email, $request->name);

         $message->to('info@test.com');
     });
      return view('quotation.index');  
}

При изменении $request->email на строку электронной почты функция работает. Но электронная почта должна исходить от электронной почты, введенной в форме laravel. Может ли кто-нибудь помочь мне решить эту проблему?

1 Ответ

0 голосов
/ 01 мая 2018

Вы получаете эту ошибку, потому что вы передаете переменные для закрытия, но неправильно.

Вы должны использовать use ($request) для закрытия, если хотите передать переменную.

public function contact(Request $request)  {
    Mail::raw($request->message, function($message) use ($request)
     {
         $message->from($request->email, $request->name);

         $message->to('info@test.com');
     });
      return view('quotation.index');  
}

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...