根据 ID 打开 Laravel 个链接
Opening Laravel links based on their Id
我创建了一个 laravel 博客,我想使用以下 laravel link.[=12= 在各自的页面上打开每个 post ]
<a href="{{route('about.show'.$about_us)}}" class="text-success text-decoration-none">{{$about_us->button}}</a> which I trying to open using the show method and the routes. This is how I have set up the show method and it's route.
public function show($id)
{
//
return view('about.show')
}
Route::get('/about.show','App\Http\Controllers\AboutController@show')->name('about.show');
当我尝试时,它给我一个错误 Route [about.show{"id":1,"title":"My Agenda","description":"My four",... not定义。
当我尝试使用它显示的索引方法打开它时,它会拾取两个 ID。当我删除 .$about_us 时,它会显示一个空白页面。这是一个菜鸟问题,但我正在努力。谁能帮忙
我不知道你的代码,所以我给出了一些如何实现这个东西的例子。
Route::get('/show/{id}','App\Http\Controllers\AboutController@getPostById');
public function getPostById($id){
$request=app('request');
$data=Model::where('id',$request->id)->get();
return response()->json([$data]);
}
- 您需要在路由中接受参数。
Route::get('/show/{id}','App\Http\Controllers\AboutController@getPostById')->name('about.show');
- 正如我在您的代码中看到的,您的
$about_us
似乎是一个对象。所以你不能将整个对象作为参数传递给命名路由。相反喜欢..
<a href="{{route('about.show', $about_us->id)}}" class="text-success text-decoration-none">{{$about_us->button}}</a>
- 然后最后在您的
getPostById()
函数中,您可以接受该 id 变量。
public function getPostById($id){dd($id);}
我创建了一个 laravel 博客,我想使用以下 laravel link.[=12= 在各自的页面上打开每个 post ]
<a href="{{route('about.show'.$about_us)}}" class="text-success text-decoration-none">{{$about_us->button}}</a> which I trying to open using the show method and the routes. This is how I have set up the show method and it's route.
public function show($id)
{
//
return view('about.show')
}
Route::get('/about.show','App\Http\Controllers\AboutController@show')->name('about.show');
当我尝试时,它给我一个错误 Route [about.show{"id":1,"title":"My Agenda","description":"My four",... not定义。
当我尝试使用它显示的索引方法打开它时,它会拾取两个 ID。当我删除 .$about_us 时,它会显示一个空白页面。这是一个菜鸟问题,但我正在努力。谁能帮忙
我不知道你的代码,所以我给出了一些如何实现这个东西的例子。
Route::get('/show/{id}','App\Http\Controllers\AboutController@getPostById');
public function getPostById($id){
$request=app('request');
$data=Model::where('id',$request->id)->get();
return response()->json([$data]);
}
- 您需要在路由中接受参数。
Route::get('/show/{id}','App\Http\Controllers\AboutController@getPostById')->name('about.show');
- 正如我在您的代码中看到的,您的
$about_us
似乎是一个对象。所以你不能将整个对象作为参数传递给命名路由。相反喜欢..<a href="{{route('about.show', $about_us->id)}}" class="text-success text-decoration-none">{{$about_us->button}}</a>
- 然后最后在您的
getPostById()
函数中,您可以接受该 id 变量。public function getPostById($id){dd($id);}