Laravel 不发布

标签 laravel http laravel-5

我正在使用 Localhost,但出于某种原因,我的 Laravel 站点没有发布(最新版本)。当我点击提交按钮时,它会使用 URL 中的 GET 数据进行刷新。我不相信它会影响商店功能。 我正在访问创建函数中的表单,它应该被发送到存储函数。

{!! Form::open(['action' => 'PostsController@store', 'method' => 'POST']) !!}
    <div class="form-group">
        {{Form::label('title', 'Title')}}
        {{Form::text('title', null, ['class' => 'form-control', 'placeholder' => 'Title'])}}
    </div>
    <div class="form-group">
        {{Form::label('body', 'Body')}}
        {{Form::textarea('body', '', ['class' => 'form-control', 'placeholder' => 'Body Text'])}}
    </div>
    {{Form::submit('Submit', ['class'=>'btn btn-primary'])}}

此代码似乎没有发布,因为它在地址栏中留下了以下内容

/posts/create?_token=kfXL2i4aiRdHiCHFwMJUkb3JMDx0OREcCeeDTY9p&title=&body=TEST

我也尝试过以下方法

<form action="PostsController@store.php" method="post">
    <input type="text" name="title">
    <input type="text" name="body">
    <input type="submit">
</form>

在地址栏中留下以下内容

/posts/create?title=&body=

我的网络路由是

Route::resource('posts', 'PostsController');

我的Controller是用composer生成的。下面是存储方法。

public function store(Request $request)
{
    $this->validate($request, [
        'title' => 'required',
        'body' => 'required'
    ]);

    return "TEST";
}

最佳答案

看起来您的表单确实是 POSTing,并点击了 store 方法,但您的验证失败了。当验证失败时,它会(使用 GET 请求)重定向回 POST 来自的路由 - 我猜这是标准的 posts/create

检查浏览器的开发工具、网络选项卡 - 您应该会看到发布和重定向。作为确认的快速测试,请尝试在 store 方法中注释我们的验证。您还应该显示您的验证错误(这将解释这里发生的事情)- 更多信息请参见 the Laravel docs关于如何做到这一点。

关于Laravel 不发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45671569/

相关文章:

php - MySQL枚举删除反斜杠

angular - IE Edge - 访问控制允许 header 列表中不存在请求 header 授权

http - 让用户从我的网站 : http or ftp 下载文件的最佳方式

php - 无法在 Laravel 5.4 中上传图片

php - Laravel 5.1 通配符路由

paypal - 一段时间后具有部分退款选项的 PSP

php - Laravel RESTful API 解析外键

php - 具有命名空间的 laravel 路由资源

php - Laravel Fortify 验证错误不起作用

http - "Maximum number of POST request parameters"限制是可捕获的吗?