Laravel路线未定义错误

时间:2017-06-20 14:52:42

标签: php laravel url laravel-5 routes

我一直在获取路由未定义错误,如果我使用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'));

}

2 个答案:

答案 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