laravel5中的路由无法正常工作

时间:2015-05-26 15:53:40

标签: php laravel caching routes

今天我对这条路线有以下问题,从来没有发生在我之前。

{!! Form::open(array('route' => 'subastas/creado', 'class' => 'form')) !!}

<div class="form-group">
    {!! Form::label('Your Name') !!}
    {!! Form::text('name', null, 
        array('required', 
              'class'=>'form-control', 
              'placeholder'=>'Your name')) !!}
</div>

<div class="form-group">
    {!! Form::label('Your E-mail Address') !!}
    {!! Form::text('email', null, 
        array('required', 
              'class'=>'form-control', 
              'placeholder'=>'Your e-mail address')) !!}
</div>

<div class="form-group">
    {!! Form::label('Your Message') !!}
    {!! Form::textarea('message', null, 
        array('required', 
              'class'=>'form-control', 
              'placeholder'=>'Your message')) !!}
</div>

<div class="form-group">
    {!! Form::submit('Contact Us!', 
      array('class'=>'btn btn-primary')) !!}
</div>
{!! Form::close() !!}

在我的路线控制器中

Route::post('subastas/creado', array(
    'as' => 'subastas/creado',
    'uses' => 'SubastaController@creado'
    ));

我的控制器

public function creado()
    {
        $usuario = new Subasta();
        $usuario->name= \Request::input('name');    
        $usuario->save();

    }

当我发送表格时,我收到了这个网址?对这个问题有什么看法吗?

http://localhost/laravel30/public/subastas/create?_token=X93VGoFhFL9YaPYZfrTlyvn0ph9KE6Om00KmMaiv&name=asdafs&email=kfh1992%40gmail.com&message=

1 个答案:

答案 0 :(得分:1)

我假设您有subastas/creado的另一条路由GET请求显示该表单。

在您Form::open()中使用它来生成网址时,laravel会将GET路由视为routes.php中注册的第一条路线,并更改形成GET的方法,而不是预期的POST

解决方案是更改路线名称并在Form::open()

中使用该名称
Route::post('subastas/creado', [
    'as' => 'subastas/creado/post',
    'uses' => 'SubastaController@creado',
]);

然后,您可以使用以下内容生成正确的表单开始标记。

Form::open(['route' => 'subastas/creado/post'])