как передать в контроллер параметр и реквест?
Всем привет.
есть роут
Route::post('/shop/{id}/message', 'ShopController@message_create')->name('message_create');
есть форма
<form action="{{ route('message_create', [$shop_one->id]) }}" method="POST">
@csrf
<div class="modal-body">
<p>Пожалуйста, укажите причину</p>
<div class="pop_sel">
<div>Вопрос</div>
<textarea rows="10" cols="45" name="text" >{{old('text')}}</textarea>
</div>
</div>
<div class="style-button_save">
<button class="button_save">Сохранить</button>
</div>
</form>
есть контроллер
public function message_create($shop_id, ShopMessageRequest $request)
{
dd($shop_id);
$shop_message = new ShopMessage();
$shop_message->fill($request->only([
'shop_id',
'product_id',
'user_id',
'city_id',
'name',
'phone',
'email',
'lg_author',
'look',
'text',
'created_at',
'updated_at',
]));
$shop_message->lg_author = 1; //1-покупатель
if (Auth::check()){ // если пользователь зарегистрирован
$shop_message->shop_id = $shop_id;
$shop_message->user_id = Auth::user()->id;
}else{ // если пользователь не зарегистрирован
$shop_message->city_id = session('city_id');
}
$shop_message->save();
return redirect()->back();
}
ShopMessageRequest - это валидация
я через форму передаю $shop_one->id, но не получаю его в контоллере $shop_id, т.е даже если в контроллере сделать dd(1) то ничего не произойдет. Т.е нет перехода в него.
Но если я убираю ShopMessageRequest $request - то все приходит. В чем проблемма? Что нужно сделать чтобы и валидацию подключить и передать shop_id