2013-05-12 93 views
11

我正在創建帖子的基本列表視圖,並且需要指向「編輯」頁面的鏈接。Laravel刀片模板,URL內的foreach變量:: to?

我使用的刀片,和我有什麼是一個表,其中的foreach循環,呈現出沿編輯每一個職位/刪除按鈕。

我想要做的就是使用刀片式服務器的URL ::爲鏈接到編輯和刪除頁面,確保洽鏈接。

我嘗試使用的代碼(記住這是一個foreach循環因此$後> ID VAR內)是這樣的:

<a href="{{ URL::to('admin/posts/edit/$post->id') }}" class="btn btn-mini btn-primary">Edit Post</a> 

然而,這是行不通的。我也試過

<a href="{{ URL::to('admin/posts/edit/<?php echo $post->id; ?>') }}" class="btn btn-mini btn-primary">Edit Post</a> 

這也沒有工作。

我沒有得到任何錯誤,鏈接字面上結束是:

http://domain.dev/admin/posts/$post->id 

有沒有解決這個工作的方法嗎?

回答

20

我認爲問題在於你在一個字符串中使用了php變量($ post),其中只有一個'。在這種情況下,它只輸出變量的名稱。試試這個:

<a href="{{ URL::to('admin/posts/edit/' . $post->id) }}" class="btn btn-mini btn-primary">Edit Post</a> 

希望這會有所幫助。 弗拉德

13

弗拉德已經給出了正確的回答你的問題,但要知道,你也可以直接通過URL::action鏈接到您的控制器動作:

<a href="{{ URL::action('Admin\[email protected]', $post->id) }}">Edit</a> 
+0

感謝。這有助於解決我的問題,因爲我認爲指向該操作的鏈接會意識到與路由中的變量匹配的變量集。並非如此。我不得不通過它作爲第二個參數。 – RedGlobe 2013-10-08 14:11:06

1

{{ }}等於<?php echo ;?>

如果你把單身'

<?php echo '$hello' ?> = $你好

但如果你把雙' (") - ><?php "$hello" ;?> =的Hello World(只是一個例子)

你需要寫類似{{ URL::to("admin/posts/edit/$post->id") }}

0

另一種方式

<a href="{{URL::to('/')}}/admin/posts/edit/{{$post->id}}">Edit</a> 
0

在Laravel有一個問題與此5,所以即使問題很老,Id也會彈出它。解決使用

{{ URL::to('/box').'/'.$box->id }}


{{ url('/box').'/'.$box->id }}

0

你也可以使用route()幫手按航線的名稱生成URL我的問題。例如,路線的定義:

Route::get('/test/mypage/{id}', '[email protected]')->name('my_route_name'); 

代碼在你看來:

<a href="{{ route('my_route_name', $row['id']) }}">{{ $row['name'] }}</a>