前回までに、index、show、create、updateの機能を作成したので、最後にdestroyのアクションを作成します。
1)Railsコントローラにdestroyアクション追加
$ vi app/controllers/users_controller.rb
def destroy @user = User.find(params[:id]) @user.destroy head :no_content end
2)Indexビューにユーザー削除のボタンを追加
$ vi app/assets/templates/users/index.html
<td> <a href="/users/{_{user.id}}">詳細</a> <a href="/users/{_{user.id}}/edit">編集</a> <button ng-click="delete(user.id)" class="btn btn-warning btn-sm">削除</button> </td>
3)Indexコントローラにdelete関数を追加
$resouceサービスを使って定義したdestroyアクションを使って削除します。
削除後、ユーザー一覧情報を更新するため、サーバーからユーザー情報を取得しなおしています。
$ vi app/assets/javascripts/
mymodule.controller("UsersIndexCtrl", function($scope, userResource, $location) { $scope.users = userResource.index(); $scope.delete = function(id) { userResource.destroy({ id: id }); $scope.users = userResource.index(); // $window.location.reload(); }; });