在我的嵌套restful控制器中,我的show方法应该接收两个像这样的值
public function show($postId, $commentsId)
{
// code
}
生成的网址应该是这样的
http://localhost/posts/1/comments/1
现在我的查询是:我需要通过我的路线呼叫发送这些twu值
我这样使用:
<a href="{{ URL::route('posts.comments.show', value1, value2) }}"> <h3> Click </h3></a>
但是它给出了这样的错误
Symfony \ Component \ Routing \ Exception \ InvalidParameterException
Parameter "dcoms" for route "debates.dcoms.show" must match "[^/]++" ("" given) to generate a corresponding URL.
答案 0 :(得分:0)
您可以通过声明其他路线来实现。
你应该有这样的东西:
Route::controller('posts', 'RestController');
尝试在以下行中添加以下内容:
Route::controller('posts/{postId}/comments/{commentsId}', 'RestController@anotherShow');
在你的功能中,你必须为这条路线添加功能:
public function anotherShow($postId, $commentsId)
{
// code
}
你也改变了你的URL::route
:
URL::route('posts.comments.show', array(value1, value2))
或者:
URL::route('posts.comments.show', array('postId'=>value1, 'commentsId'=>value2))
答案 1 :(得分:0)
现在这个问题已经解决了。我在这里添加这个答案因为它可能会帮助你解决这类问题。 我要感谢@FDL非常棒的支持以及@kasys。
我在那里做了一个错误,因为我在生成网址时已经猜到@kasys(@FDL解决了这个问题)。
在这种情况下,网址生成方法应该是这样的
<a href="{{ URL::route('posts.comments.show', array(value1, value 2)) }}"><h3>Click this link</h3></a>
此处value1
表示帖子的ID,value2
表示评论的ID,因此此链接生成的url为 - &gt;
http://localhost/posts/value1/comments/value2
谢谢@FDL以及所有参加此活动的恶魔。不久,一个网站将来到这个世界。需要你的祝福朋友:)谢谢!