function () 在 laravel 5.6 中不退出
function () does not exit in laravel 5.6
我正在使用资源路由。现在,我想添加另一条路线:
Route::resource('discussion', 'DiscussionsController');
Route::post('/discussion/reply/{id}',[
'use' => 'DiscussionsController@reply',
'as' => 'discussion.reply'
]);`
这里是回复功能,
public function reply($id)
{
$discussion = Discussion::find($id);
$reply = Reply::create([
'user_id'=>Auth::id(),
'discussion_id' => $id,
'content'=> \request()->reply
]);
return redirect()->back();
}
这是重定向到商店功能的blade。
<div class="card">
<div class="card-body">
Leave a reply
<form method="post" action="{{route('discussion.reply', ['id'=> $discussion->id])}}">
{{csrf_field()}}
<div class="form-group">
<textarea name="reply" class="form-control"></textarea>
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary ">Reply</button>
</div>
</form>
</div>
问题是什么?
尝试改变路线的顺序
而不是
Route::resource('discussion', 'DiscussionsController');
Route::post('/discussion/reply/{id}',[
'use' => 'DiscussionsController@reply',
'as' => 'discussion.reply'
]);
使用那个
Route::post('/discussion/reply/{id}',[
'use' => 'DiscussionsController@reply',
'as' => 'discussion.reply'
]);
Route::resource('discussion', 'DiscussionsController');
我可能是错的,但乍一看我会说这是因为你的 Route
是 use
而不是 uses
。
尝试更改
'use' => 'DiscussionsController@reply',
到
'uses' => 'DiscussionsController@reply',
其次,您不需要 \
和 \request()->reply
。
改成request()->reply
甚至request('reply')
我正在使用资源路由。现在,我想添加另一条路线:
Route::resource('discussion', 'DiscussionsController');
Route::post('/discussion/reply/{id}',[
'use' => 'DiscussionsController@reply',
'as' => 'discussion.reply'
]);`
这里是回复功能,
public function reply($id)
{
$discussion = Discussion::find($id);
$reply = Reply::create([
'user_id'=>Auth::id(),
'discussion_id' => $id,
'content'=> \request()->reply
]);
return redirect()->back();
}
这是重定向到商店功能的blade。
<div class="card">
<div class="card-body">
Leave a reply
<form method="post" action="{{route('discussion.reply', ['id'=> $discussion->id])}}">
{{csrf_field()}}
<div class="form-group">
<textarea name="reply" class="form-control"></textarea>
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary ">Reply</button>
</div>
</form>
</div>
问题是什么?
尝试改变路线的顺序
而不是
Route::resource('discussion', 'DiscussionsController');
Route::post('/discussion/reply/{id}',[
'use' => 'DiscussionsController@reply',
'as' => 'discussion.reply'
]);
使用那个
Route::post('/discussion/reply/{id}',[
'use' => 'DiscussionsController@reply',
'as' => 'discussion.reply'
]);
Route::resource('discussion', 'DiscussionsController');
我可能是错的,但乍一看我会说这是因为你的 Route
是 use
而不是 uses
。
尝试更改
'use' => 'DiscussionsController@reply',
到
'uses' => 'DiscussionsController@reply',
其次,您不需要 \
和 \request()->reply
。
改成request()->reply
甚至request('reply')