我正在关注有关Laravel的教程,并通过表单将其添加到数据库中。在保存到数据库的函数的最后,它返回到表单所在的页面,但我想转到显示信息的另一页面。在本教程中,我创建了一个带有函数的控制器,该函数返回包含所有数据库信息的视图-该元素可以正常工作,但是在保存到数据库后,似乎找不到直接调用此函数的方法。我还可以返回仅显示静态视图的任何其他视图(仅是不带数据处理的html)。我想要实现的目标有可能吗?
public function store(){
$li = new \App\LTest1();
$li->creator = request('creator');
$li->title = request('title');
$li->views = request('views');
$li->save();
return back(); // this works
// return view('info'); // this works
//return ('Listings@showList'); this doesnt work = how do i call a function in a controller???
}
// routing
Route::get('info', function () {
return view('info'); // i can get to this static page from my store() function
});
Route::get('thedataviewpage', 'Listings@showList'); // you can route to this but not from the store() function
答案 0 :(得分:1)
Redirect是您这里需要的东西
public function store() {
$li = new \App\LTest1();
$li->creator = request('creator');
$li->title = request('title');
$li->views = request('views');
$li->save();
return redirect('info'); // Redirect to the info route
}
答案 1 :(得分:0)
以这个例子为例。确保添加正确的路由名称和正确的消息。
// index is the education's index
const addHighlight = (index) => {
const newEducation = {
...education[index],
highlights: [...education[index].highlights, '']
};
setEducation(Object.assign([], education, {index: newEducation}));
};
// index is the education's index
<button onClick={() => addHighlight(index)}>Add highlight</button>
答案 2 :(得分:0)
只需使用
即可返回控制器操作return redirect()->action('Listings@showList');
或者您可以使用route来调用该控制器动作
return redirect('/thedataviewpage');