2015-10-10 97 views
10

說明:我有一張滿了測試數據的表格。有時候,我想清除它以獲取新數據。我可以在DBMS應用程序中執行截斷,如MySQL WorkBench,但我試圖在我的應用程序內實現它。在Laravel 5中截斷一個表格


目標:做一個按鈕上點擊時截斷表在數據庫中。


這裏是我的步驟:

1 - 聲明路線

Route::delete('visitor/truncate',array('as'=>'visitor.truncate', 'uses'=>'[email protected]')); 

2 - 在我VisitorController

創建 truncate功能

3 - 創建我的視圖按鈕

{!! Form::model($visitors, array('route' => array('visitor.truncate'),'method' => 'DELETE')) !!} 
      <button type="submit" class="btn bgm-red btn-float waves-effect waves-effect waves-button waves-float"><i class="md md-remove"></i></button> 
     {!! Form::close()!!} 

4 - 測試

當我點擊它,它進入我truncate()功能在我控制器,但我不斷收到此錯誤

調用未定義的方法照亮\數據庫\雄辯\收藏::截斷()


我需要包括任何使用truncate()

任何提示,將非常感謝!

回答

17

truncate方法是查詢生成器的一部分。但是Visitor::all()返回一個Collection實例。則需要使用構建查詢如下:

Visitor::query()->truncate(); 
15

以下應該工作以及,

Visitor::truncate();

0

,如果你沒有爲表模型類的另一種方式 - Laravel 5.4

DB:connection(database connection name)->table(table name)->truncate();