TypeError:f是未定义的laravel

时间:2017-07-12 05:31:51

标签: php laravel

这是我的控制器

$result = $sth->fetchAll(PDO::FETCH_NUM);

这是我的index.blade.php

if ($request->ajax())
  {
    $fields = Field::select(['id_lapangan','nama_lapangan','harga_sewa','gambar']);
    return Datatables::of($fields)
    // ->addColumn('action', function($field){
    //   return view('datatable._action', [
    //     'model' =>$field,
    //     'form_url'=>route('field.destroy', $field->id),
    //     'edit_url'=>route('field.edit',$field->id),
    //     'confirm_message'=>'yakin mau hapus'.$field->name .'?'
    //   ]);
    // })
    ->make(true);
  }

  $html = $htmlBuilder
    ->addColumn(['data'=>'id_lapangan','name'=>'id_lapangan','title'=>'No.'])
    ->addColumn(['data'=>'nama_lapangan','name'=>'nama_lapangan','title'=>'Nama Lapangan'])
    ->addColumn(['data'=>'harga_sewa','name'=>'harga_sewa','title'=>'Harga Sewa'])
    ->addColumn(['data'=>'gambar','name'=>'gambar','title'=>'Gambar'])
    ->addColumn(['data'=> 'action' , 'name' => 'action' , 'title' => '' ,
    'orderable' =>false , 'searchable' => false ]);

    return view('fields.index')->with(compact('html'));

当我在浏览器上运行时,数据库中的数据不会出现, 并且eror是 TypeError:f未定义

1 个答案:

答案 0 :(得分:0)

我想这是因为你的设置中有5列但是你的ajax调用你只返回4.

要么注释掉:

->addColumn(['data'=> 'action' , 'name' => 'action' , 'title' => '' , 'orderable' =>false , 'searchable' => false ]);

或者为ajax部分添加逻辑。

希望这有帮助!