Laravel 4 - 表单提交以更新MySQL表

时间:2013-12-02 13:10:09

标签: php mysql laravel laravel-routing

我正在尝试更新名为“users”的数据库表中的数据,特别是3列。但现在我只是想与控制器沟通以获得回音! 我有以下代码:

我的视图文件(dashboard.blade.php)中有一个表单:

  <div class="small-12">
    {{ Form::open(array('action' => 'UsersController@putCoordinates')) }}
    <div class="row">
      <div class="small-3 columns">
        <label for="city" class="right inline"><i class="fa fa-chevron-right"></i></label>
      </div>
      <div class="small-9 columns">
        {{ Form::text('city', null, array('id'=>'city', 'placeholder'=>'current city', 'required'=>'required')) }}
      </div>
    </div>
    <div class="row">
      <div class="small-3 columns">
        <label for="markerLat" class="right inline"><i class="fa fa-chevron-right"></i></label>
      </div>
      <div class="small-9 columns">
        {{ Form::text('markerLat', null, array('id'=>'markerLat', 'placeholder'=>'latitude', 'required'=>'required')) }}
      </div>
    </div>
    <div class="row">
      <div class="small-3 columns">
        <label for="markerLng" class="right inline"><i class="fa fa-chevron-right"></i></label>
      </div>
      <div class="small-9 columns">
        {{ Form::text('markerLng', null, array('id'=>'markerLng', 'placeholder'=>'longitude', 'required'=>'required')) }}
      </div>
    </div>
    <div class="row">
      <div class="small-12 columns">
        {{ Form::button('Update', array('class'=>'button small addMe postfix', 'id'=>'addMe'))}}
      </div>
    </div>
    {{ Form::close() }}
  </div>

我创建的路线是:

Route::controller('users', 'UsersController');

在控制器文件(UsersController)中,我有以下功能:

    public function putCoordinates() {  
        echo "It works!";
    }

但到目前为止,它似乎没有起作用..我试图将我的开放形式改为:

{{ Form::open(array('url'=>'users/update', 'class'=>'form')) }}

但它不起作用,我没有得到任何错误,我只是按“更新”,没有任何反应..

任何帮助将不胜感激,我必须在这里遗漏一些非常简单的东西。 谢谢!

1 个答案:

答案 0 :(得分:0)

默认方法是POST,因此您需要告诉Laravel使用方法PUT创建表单:

{{ Form::open(array('method' => 'PUT', 'action' => 'UsersController@putCoordinates')) }}

并且,要创建提交按钮,您必须使用:

{{ Form::submit('Update', array('class'=>'button small addMe postfix', 'id'=>'addMe'))}}