我在laravel中遇到链接问题。
我有这条路线:
$lingua = Request::segment(1);
Route::group(array('prefix' => $lingua), function()
{
Route::get('/', 'ItemController@menu');
Route::get('/{idcampo}/{idcat}','ItemController@show');
});
第一个是语言并请求第一个段,并用作前缀。在/ 这是我的ItemController控制器
public function menu()
{$lingua = Request::segment(1);
return View::make('index', ['categorie'=>DB::table('cat_nome')->join('lingua', 'cat_nome.id_lingua', '=', 'lingua.id') ->where('lingua.lingua','=',$lingua)->get(),
'campi' => DB::table('campo_nome')->join('lingua', 'campo_nome.id_lingua', '=', 'lingua.id') ->where('lingua.lingua','=',$lingua)->get(),
'lingua'=>$lingua,
]
);
}
public function show($camps,$cats)
{$lingua = Request::segment(1);
return View::make('categorie', ['categorie'=>DB::table('cat_nome')->join('lingua', 'cat_nome.id_lingua', '=', 'lingua.id') ->where('lingua.lingua','=',$lingua)->get(),
'campi' => DB::table('campo_nome')->join('lingua', 'campo_nome.id_lingua', '=', 'lingua.id') ->where('lingua.lingua','=',$lingua)->get(),
'dd' => DB::table('description')->join('lingua', 'description.id_lingua', '=', 'lingua.id')->where('lingua.lingua','=',$lingua)->where ('description.id_cat','=',$cats)->where ('description.id_campo','=',$camps)->select('description.descrizione')->get(),
'lingua' => $lingua,
]);
}
在索引i中查询菜单的条目。
@foreach ($campi as $campo)
{{$campo->nome}}
<ul class="list-unstyled">
@foreach($categorie as $categoria)
<li> <a href="{{$lingua}}/{{$campo->id_campo}}/{{$categoria->id_cat}}">{{$categoria->nome}}</a> </li>
@endforeach
</ul>
@endforeach
现在,当我传递给控制器时,我保持菜单可视化,并可视化数据库的单个条目(描述)。
我的问题是,当我第一次点击链接时,似乎是: 语言/ ID1 / ID2 我进入正确的页面,可视化产品的描述但现在侧面菜单上的链接变为:
语言/ ID1 /语言/ ID1 / ID2
但即使我在Itemcontroller @ show
中也应该始终是language / id1 / id2第二次在侧边菜单中生成链接时,链接上会添加一些内容,我无法理解原因。
答案 0 :(得分:2)
您可能会尝试使用URL ::这样:
<a href="{{ URL::to($lingua. '/'. $campo->id_campo. '/'. $categoria->id_cat) }}">