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】:

我遇到了同样的问题,你可以这样做: 尝试以这种方式设置表单操作:

&lt;form  action=" url('admin/ideas') . '/' . $idea-&gt;id" &gt;

它应该这样工作

【讨论】:

以上是关于Laravel 两次预先添加基本 URL的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 邮件在添加密件抄送时会发送两次电子邮件

laravel框架入门

Paypal 使用 Laravel 预先批准的付款

如果执行嵌套的异步调用,则函数运行两次,否则运行一次。需要帮助来预先确定何时会发生这种情况

Laravel 5.3 使用 with() 方法预先加载关系

从预先加载的 laravel 集合中加载特定的列