我一直在获取路由未定义错误,如果我使用url()
我得到服务器无法提供安全连接错误。
我希望我能得到一些帮助。
路线
Route::get('/show/{table_name}/{product_id}', 'PageCotroller@showdetails')->name('product-show');
查看:
<h4><a href="{{ url('product-show' .$table_name . '/' .$product->item_id)}}">{{ $product->title }}</a></h4>
控制器:
public function showdetails($table_name,$pid){
$categories = Category::all();
$data['product_id']=$pid;
$data['table']=$table_name;
$shop_name=Shop::all();
$query = DB::table($table_name)
->select('*')
->where('item_id', '=', $pid)
->get();;
$image=Item_image::all();
$pro_img = DB::table('item_images')
->select('image_loc')
->where('prod_id', $pid)
->get();
return view('show_details',compact('categories','image','pro_img','table_name','shop_name'));
}
答案 0 :(得分:1)
要按名称调用路由,您应该使用route
函数并将数组中的参数作为第二个参数添加。
route('product-show', [$table_name, $product->item_id])
您获得路线未定义错误的原因是您正在生成网址/product-show/{table_name}/{product_id}
,而实际网址为/show/{table_name}/{product_id}
。此外,当有许多辅助函数为您执行此操作时,手动添加参数是不好的做法。
答案 1 :(得分:0)
更改视图地址
<h4><a href="{{ url('product-show/' .$table_name . '/' .$product->item_id)}}">{{ $product->title }}</a></h4>
OR
使用 route helper laravel