我正在创建帖子的基本列表视图,并需要指向“编辑”页面的链接。
我正在使用刀片,而我所拥有的是一个带有foreach循环的表格,显示每个帖子以及编辑/删除按钮。
我想要做的是使用刀片的URL ::来获取编辑和删除页面的链接,以确保链接一致。
我尝试使用的代码(请记住这是在foreach循环中,因此$ post-> 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
有什么方法可以解决这个问题吗?
答案 0 :(得分:22)
我认为问题是你在一个'
的字符串中使用php变量($ post)。在这种情况下,它只输出变量的名称。试试这个:
<a href="{{ URL::to('admin/posts/edit/' . $post->id) }}" class="btn btn-mini btn-primary">Edit Post</a>
希望这会有所帮助。 维拉德
答案 1 :(得分:13)
vlad已经为您的问题提供了正确的答案,但请注意,您也可以通过URL::action
直接链接到您的控制器操作:
<a href="{{ URL::action('Admin\PostsController@edit', $post->id) }}">Edit</a>
答案 2 :(得分:1)
{{ }}
等于<?php echo ;?>
如果你放一个'
<?php echo '$hello' ?>
= $ hello
但是如果你把双' (")
- &gt; <?php "$hello" ;?>
= Hello World(只是一个例子)
您需要编写类似{{ URL::to("admin/posts/edit/$post->id") }}
答案 3 :(得分:0)
另一种方式
<a href="{{URL::to('/')}}/admin/posts/edit/{{$post->id}}">Edit</a>
答案 4 :(得分:0)
在Laravel 5中遇到过这个问题,所以即使问题很老,我也会把它弹出来。使用
解决了我的问题 {{ URL::to('/box').'/'.$box->id }}
或
{{ url('/box').'/'.$box->id }}
答案 5 :(得分:0)
您也可以使用route()
助手按路线名称生成网址。例如,路线的定义:
Route::get('/test/mypage/{id}', 'MyController@myAction')->name('my_route_name');
您视图中的代码:
<a href="{{ route('my_route_name', $row['id']) }}">{{ $row['name'] }}</a>
答案 6 :(得分:0)
我认为这会起作用
<a href="{{ url('test/'.$post->id.'/view') }}"></a>