web-dev-qa-db-ja.com

Laravel 5.1データベースから行を削除する

ボタンをクリックしてカテゴリを削除しようとしています

刃:

<td class="center"><a href="{{URL::to('/deletecat/'.$category->name) }}"><span class="glyphicon glyphicon-trash"></span></a></td>

ルート:

Route::get('/deletecat/{name}','CategoryController@delete');

コントローラ:

 public function delete($name)
    {

        category::find($name)->delete();

        return Redirect::route('managecategory');

    }

しかし、ボタンをクリックするとエラーが発生します

Call to a member function delete() on a non-object

助けてくれてありがとう。

6
vignesh pbs

::find($id)メソッドは、$idが数値、つまり検索する行の主キーであることを想定しています。

名前で行を削除する場合は、次のコードを使用する必要があります。

category::where('name', $name)->delete();
9
Jerodev