Laravel 两次预先添加基本 URL
Posted
技术标签:
【中文标题】Laravel 两次预先添加基本 URL【英文标题】:Laravel prepends base url twice 【发布时间】:2015-11-22 23:05:23 【问题描述】:在我目前正在构建的项目中,我遇到了一个我似乎无法解决的非常奇怪的问题。
我在 Laravel 4.1 中构建这个项目(我不能使用 4.2/5.0/5.1),因为它必须在生产服务器上运行。
现在的问题是,我生成的 url 总是得到双附加的基本 url。
所以当我这样做时:
Form::open(array('route' => array('admin.ideas.update', $idea->id), 'files' => true, 'method' => 'put'))
我在我的源代码中看到了这一点:
<form method="POST" action="http://myapp.app:8000/admin/ideas/42" accept-charset="UTF-8" enctype="multipart/form-data">
但是当我提交时,我得到:在我的浏览器窗口中:
http://myapp.app:8000/http://myapp.app:8000/admin/ideas
当我执行 Redirect::route(...) 时会出现同样的问题,但是当我使用 Redirect::to('url') 时一切正常。
以前有没有人遇到过这种情况并且知道我该如何解决?
编辑:
Route::get('ideas/id/edit', array(
'as' => 'admin.ideas.edit',
'uses' => 'IdeasController@edit',
));
Route::put('ideas/id', array(
'as' => 'admin.ideas.update',
'uses' => 'IdeasController@update',
));
【问题讨论】:
你能添加你的 routes.php 文件吗? 编辑了我原来的帖子。但它不仅在我的应用程序的这一部分,它无处不在。 浏览器可以做这样的事情,比较检查器的基本标签是否正常工作并通知我们 【参考方案1】:我遇到了同样的问题,你可以这样做: 尝试以这种方式设置表单操作:
<form action=" url('admin/ideas') . '/' . $idea->id" >
它应该这样工作
【讨论】:
以上是关于Laravel 两次预先添加基本 URL的主要内容,如果未能解决你的问题,请参考以下文章
如果执行嵌套的异步调用,则函数运行两次,否则运行一次。需要帮助来预先确定何时会发生这种情况