繁体   English   中英

Laravel重定向到具有特定URL参数的视图(未定义路由)

[英]Laravel redirect to view with specific URL parameters (gives route not defined)

这是我的第一个Laravel项目,我犯了一个路由错误,并且已经尝试解决了好几天,解决方案必须非常简单,所以我缺少了一些东西。 我尝试过在其他文章中找到的类似解决方案,但是它们包含的代码要复杂得多,这对我而言只会使情况变得更糟。

我有一条GET路线,例如:

Route::get('peppers/{id}', function ($id) {
    //return $id;      
    $pepper = DB::table('peppers')->get(); 
    return view('peppers',['id' => $id,'pepper'=>$pepper]);    

})->name('peppers');

我也有一条简单的POST路线。 (用于我在另一页上使用的表单)它将所有内容正确插入到数据库中。 问题出在重定向中。

Route::post('pepperCreate', function (\Illuminate\Http\Request $request) {

    $post = $_POST;
    $pepperType = $_POST["pepperType"];
    $pepperURL = $_POST["pepperURL"];
    $pepperAuthor = $_POST["pepperAuthor"];
    and so on... ending with:

return redirect()->route('peppers/{id}', [$id]);

})->name('pepperCreate');

但是每次我尝试重定向时,都会给我一个错误消息:

路由[peppers / {id}]未定义。

(我的问题是:我是否不仅定义了该GET路由,因为当我单击该URL时它就起作用了),其中包括:

<a href="{{route('peppers',['id' => $topic->id])}}">{{$topic->topicTitle}}</a>

经过数天的尝试,尝试不同的变化,我试图弄清楚我在这里缺少什么。 任何输入表示赞赏。

确实,因为您需要使用路径的名称 ,并且还对参数使用关联数组,如:

return redirect()->route('peppers', ['id' => $id]);

希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM