我想通過用戶的user_id向用戶發送一個訊息。 這是我的控制器
public function messagesend(Request $request, $user_id){
$data = array('details'=> $request-> details,
'email'=>$user_id->email)。)
郵件:。 send('transactionmessage', $data, function($message>) use ($data) {
$message->從('[email protected]')。
$message->to($request-> email);
$message->subject($data['details'])。
});
// echo $$request;
return redirect('beingstatus')->with('success','Message Sent!') 。
}
而我的路線是
Route::post('/messagesend'/span>, [UserController:: class, 'messagesend'])->middleware(['auth'])-> name('magesend')。
不知道為什么我得到了這個錯誤
。Too few arguments to function AppHttpControllersUserController: :messagesend(), 1 passed in /home/swit/public_html/manager/vendor/laravel/framework/src/Illuminate/Routing/Controller. php on line 54 and exactly 2 expected
這是我的 blade.php
< form method="POST" action = "{route('magesend')}">
@csrf
< input type = "hidden"/span> value="{{$email}}" name ="email" />
<div class="row">
<div class="col-md-8"/span>>
< div class="tab-content profile-tab" id="myTabContent">
< div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">
< textarea placeholder="Enter Message" name="details" rows="5" cols="60" id ="詳細資訊"> </textarea><br>
< button type = "submit" class = 'btn btn outline-primary mr-2'> 發送訊息</按鈕>
</div>/span>
</div>/span>
</div>/span>
</div>/span>
</form>
如果你知道我哪里錯了,請幫我解決。 謝謝
uj5u.com熱心網友回復:
你的路由沒有接受任何引數:
你的路由沒有接受任何引數。
Route::post('/messagesend'/span>, [UserController:: class, 'messagesend'])->middleware(['auth'])->name('messagesend')。
然而,控制器方法需要兩個:
。public function messagesend(Request $request, $user_id){
$data = array('details'=> $request-> details,
'email'=>$user_id->email)。)
郵件:。 send('transactionmessage', $data, function($message>) use ($data) {
$message->從('[email protected]')。
$message->to($request-> email);
$message->subject($data['details'])。
});
// echo $$request;
return redirect('beingstatus')->with('success','Message Sent!') 。
}
第一個引數,Request $request,是由Laravel使用依賴注入的方式注入的。
第二個引數需要從路由中獲取,但是...他們沒有引數。
你在這里有兩個選擇, 取決于你想實作的目標:
- 在你的路由中添加一個引數: 。
Route::post('/messagesend/{user_id}', [UserController:: class, 'messagesend'])->middleware(['auth'])->name('messagesend')。
- 從你的控制器方法中洗掉引數
$user_id。
uj5u.com熱心網友回復:
所有的表單都是向你的Route發送一個Request $request。你沒有向messagesend()函式傳遞一個$user_id。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/326838.html
標籤:
