ModelのCRUD (6/6)
作成:2016-02-28 08:55
更新:2016-02-28 08:55
更新:2016-02-28 08:55
■レコードの削除
残るは、レコードの削除です。これは簡単です。削除したいレコードを検索してModelインスタンスを取得し、
こんな具合に delete を呼び出せばそのレコードが削除されます。驚くほどに簡単ですね!
では、これもサンプルを考えてみましょう。削除は、フォームなどを用意しなくてもいいので、アクションメソッドだけを追加することにします。(下のリスト欄)
これは、削除するレコードのID番号をクエリーパラメータにつけてアクセスすると、そのレコードを削除する、というものです。例えば、
こんな具合にアクセスすると、IDが1番のレコードが削除されます。行ってることはとても簡単なことです。
findで送られたパラメータのIDのレコードをModelインスタンスとして取得し、そのdeleteを呼び出すだけです。これでレコードが削除されます。
――これで、CRUDのすべてが作成できました。とりあえずここまでわかれば、データベースの基本はほぼOKですね!
Modelインスタンス->delete();
こんな具合に delete を呼び出せばそのレコードが削除されます。驚くほどに簡単ですね!
では、これもサンプルを考えてみましょう。削除は、フォームなどを用意しなくてもいいので、アクションメソッドだけを追加することにします。(下のリスト欄)
これは、削除するレコードのID番号をクエリーパラメータにつけてアクセスすると、そのレコードを削除する、というものです。例えば、
http://localhost:8000/helo/delete?id=1
こんな具合にアクセスすると、IDが1番のレコードが削除されます。行ってることはとても簡単なことです。
$id = $request->id;
$data = MyTable::find($id);
$data->delete();
findで送られたパラメータのIDのレコードをModelインスタンスとして取得し、そのdeleteを呼び出すだけです。これでレコードが削除されます。
――これで、CRUDのすべてが作成できました。とりあえずここまでわかれば、データベースの基本はほぼOKですね!
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
public function getDelete(Request $request) { $id = $request->id; $data = MyTable::find($id); $data->delete(); return redirect()->action('HeloController@getIndex'); }
※関連コンテンツ