簡體   English   中英

使用帶有$ id參數的路線后,laravel導航欄不起作用?

[英]Laravel navigation bar not working after using a route with $id parameter?

我正在使用laravel從MySQL數據庫中查看用戶表,以及如何有編輯列,我需要使用$ id參數將用戶重定向到另一個頁面並查看用戶詳細信息。 這是我的路線,工作正常。

<td>
    <a href="{{ URL::to('userdetails',$user->id) }}"</a>
    Edit
</td>

但在轉到該頁面后,該頁面將查看用戶詳細信息。 我的導航欄網址開始出現異常。

當我查看用戶列表時,我的網址是

/osama/warehouse/public/index.php/userslist

當我查看具有ID的特定用戶時,網址為

/osama/warehouse/public/index.php/userdetails/1

直到一切正常,但是之后,當我單擊導航欄或其他鏈接上的主頁按鈕時,我得到一個錯誤,因為URL不正確

/osama/warehouse/public/index.php/userdetails/home !!!

正確的網址應為

/osama/warehouse/public/index.php/home 

注意我沒有為我的導航欄使用刀片路由或html url,只是純HTML。原因是我得到了不能包含在html鏈接中的css類。

URL::to()不會在URL前面加上/因此,當您調用它時,將會返回“ userslist”或“ userdetails / 1”。

如果您在對URL::to()調用中簡單地添加一個/ ,它將很好地工作:

<a href="{{ URL::to('/userdetails',$user->id) }}"></a>

您需要對所有出現的URL::to()都執行此操作(例如,在Home鏈接上)。

在其他新聞中,還有兩個其他問題:

  • 您的<a>標記缺少結束> -您只有id) }}"</a>
  • 您的鏈接為空,因為“編輯”位於標記之外。 您可能需要id) }}">Edit</a>

您應該真正使用Laravel提供的幫助程序類。
可以避免這種問題。

使用Laravel的示例:

<a href="{{ URL::to('home') }}">Dashboard</a>
<a href="{{ url('home') }}">Dashboard</a>

如果您堅持不使用它們,則可能必須通過在開始處添加斜杠來將鏈接修改為相對於根目錄:

<a href="/home">Dashboard</a>

您應該更改所有需要相對於根目錄的URL。

謝謝大家,解決方案是更改導航欄鏈接的{{ url('home') }}此鏈接可使用laravel刀片在任何地方使用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM