Php Laravel在加载页面时执行POST路由

Php Laravel在加载页面时执行POST路由,php,laravel,laravel-4,Php,Laravel,Laravel 4,所以我在头版有一张表格: {{ Form::open(array('url' => URL::to('', array(), true))) }} <p> {{Form::label('author') }} {{Form::text('author') }} </p> <p> {{Form::label('title') }}

所以我在头版有一张表格:

{{ Form::open(array('url' => URL::to('', array(), true))) }}
        <p>
            {{Form::label('author') }}
            {{Form::text('author') }}
        </p>
        <p>
            {{Form::label('title') }}
            {{Form::text('title') }}
        </p>
        <p>
            {{Form::label('message') }}
            {{Form::text('message') }}
        </p>
        <p>
            {{ Form::submit() }}
        </p>
{{ Form::close() }}

所以我基本上是在测试我的表单提交是否有效。但事实并非如此。由于某些原因,POST方法在我加载首页时执行,而不是在提交表单时执行。这是为什么?我如何解决这个问题?

您的表单url应该指定为发布到/-

{{ Form::open(array('url' => '/')) }}
为了重定向回主页,你应该像这样修改你的post方法-

Route::post('/', function()
{
    /* testing */
    print_r("DONE!");
    return Redirect::to('/');
});

是重定向的文档。

我建议您使用dirrefent路径:

{{ Form::open(array('url' => URL::to('/submitForm', array(), true))) }}
然后:

Route::post('/submitForm', function()
{
    /* testing */
    print_r("DONE!");
    return redirect()->route('/');
});

将post方法的路由名称更改为
/test
,并将
URL::更改为('/test')
@aldrin27。这样做有效,但如何确保它在首页执行并返回主页?基本上,我使用首页上的表单添加帖子,新添加的帖子会显示在我的帖子列表的顶部(添加到数据库后)。如何防止重定向到/test?
return Redirect::to('/')
Route::post('/submitForm', function()
{
    /* testing */
    print_r("DONE!");
    return redirect()->route('/');
});