我有Artisan命令生成的资源路由,
Route::resource('posts','PostsController');
此路由的URI是posts / {post} / edit,中间需要一个动态值。但是因为我使用url()方法链接所有路线,所以我不得不将模板表达式嵌套为:
<a href="{{url('/posts/{{$show->id}}/edit')}}" class="btn btn-sm">Edit</a>
这给我一个错误:NotFoundHttpException,因为它无法获得{{$ show-> id}}部分。我该如何解决?
答案 0 :(得分:0)
在PostsController
中,创建一个要显示在模板中的新变量。您应该能够在控制器内使用url()
函数。 (请参见here)像平常一样将此值传递给模板。
答案 1 :(得分:0)
使用{% if instance.image %}
<img src='{{ instance.image.url }}' class='img-responsive' style='max-width:300px;' />
{% endif %}
<h3>{{ instance.brand}} {{ model }}</h3>
{% if instance.user.get_full_name %}
<p>Author: {{ instance.user.get_full_name }}</p>
{% endif %}
<h5>Originally Supplied With: </h5> {{ instance.orig }}
{% if instance.comp %}
<h5>Compatible With: </h5>{{ instance.comp }}
{% endif %}
而不使用<a href="<?php echo url('/posts/'.$show->id.'/edit')?>" class="btn btn-sm">Edit</a>
表示法。
答案 2 :(得分:0)
您需要双引号并删除一个括号
您是否正在寻找类似的东西?
@foreach($posts as $post)
<a href="{{url("/posts/{$post->id}/edit")}}" class="btn btn-sm">Edit</a>
@endforeach