簡體   English   中英

使用laravel刪除功能刪除記錄

[英]Delete a record using laravel delete function

我想從名為post的表中刪除一條記錄。 我在視圖中發送了一個名為tag的參數,以針對該tag刪除某些記錄。 這是我的路線

   Route::get('/delete' , array('as' =>'delete' , 'uses' => 'Postcontroller@deletepost'));

通過這條路線,我將針對“標簽”字段刪除我的帖子。 我的桌子有兩列。 一個是標簽,另一個是內容,我在PostController中的刪除功能是

   public function deletepost($tag){

   $post = post::find($tag); //this is line 28 in my fuction
   $post->delete();
   echo ('record is deleted') ;
   }

我從自己的角度發送標簽,但出現以下錯誤

  ErrorException in Postcontroller.php line 28:
  Missing argument 1 for
  App\Http\Controllers\Postcontroller::deletepost()

您的操作應如下所示:

use Illuminate\Http\Request;

public function deletepost(Request $request) // add Request to get the post data
{
    $tagId = $request->input('id'); // here you define $tagId by the post data you send
    $post = post::find($tagId);
    if ($post) {
        $post->delete();
        echo ('record is deleted!');
    } else {
        echo 'record not found!');
    }
}

如果像tag_id這樣傳遞參數,則必須傳遞該參數的示例,然后必須使用Request將其捕獲到控制器函數中。

public function deletepost(Request $request){

   $post = post::find($request::get('tag_id')); 
   $post->delete();
   echo ('record is deleted');
}

您沒有告訴路由期望該參數。 您應該在您的路由文件中嘗試這種方式:

Route::get('/delete/{tag}' , array('as' =>'delete' , 'uses' => 'Postcontroller@deletepost'));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM