我有一个罕见的问题,我正在使用 Laravel 4 和php,我在jQuery datatable
中有一个“删除”按钮m删除注册表,当我按下按钮(在除第一个之外的任何其他数据中)调用tipos.destoy
方法并且工作正常!但是当我按下第一个删除按钮时,它会抛出异常:
Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException。
Route::resource('tipos', 'TiposController');
public function destroy($id)
{
$this->tipo->find($id)->delete();
return Redirect::route('tipos.index');
}
protected $guarded = array();
protected $table = 'tipos';
protected $fillable = array('clave_tipo', 'nombre_tipo', 'created_by', 'updated_by');
public static $rules = array(
'clave_tipo' => 'required',
'nombre_tipo' => 'required',
'created_by' => 'required',
'updated_by' => 'required'
);
查看:
@foreach($tipos as $tipo)
<tr>
<td>{{{ $tipo->clave_tipo }}}</td>
<td>{{{ $tipo->nombre_tipo }}}</td>
<td>{{ link_to_route('tipos.edit', 'EDITAR', array($tipo->id), array('class' => 'btn btn-success')) }}</td>
<td>
{{ Form::open(array('method' => 'DELETE', 'route' => array('tipos.destroy', $tipo->id))) }}
{{ Form::submit('Delete', array('class' => 'btn btn-danger')) }}
{{ Form::close() }}
</td>
</tr>
@endforeach
我不知道为什么它适用于所有其他按钮,但只有第一个按钮才会抛出异常。 任何帮助都会非常感激。
答案 0 :(得分:0)
我解决了这个问题,我只是添加了另一种形式:
<td>
<form method="POST" action="http://localhost/posm/public/tipos/" accept-charset="UTF-8"><input name="_method" type="hidden" value="DELETE"><input name="_token" type="hidden" value="zrWDtdGVRnzreYGnZizSHqeIo7jPQlXBlGP03iJW">
</form>
{{ Form::open(array('method' => 'DELETE', 'route' => array('tipos.destroy', $tipo->id))) }}
{{ Form::submit('Delete', array('class' => 'btn btn-danger')) }}
{{ Form::close() }}
</td>
我不清楚为什么我必须这样做,我认为这是一个laravel或其他的错误,但它的确有效,谢谢!