3

現在、Angular JS と Sinatra を使用してレコードを削除する方法を考えています。現在、コードは内部 500 サーバー エラーをスローします。これを正しく行う方法のチュートリアルをオンラインで探しましたが、関連するものは見つかりませんでした。

私のコードは次のとおりです。

app.rb

#Delete download
#not working...
delete '/view1/downloaddelete' do
ng_params = JSON.parse(request.body.read)
@download = Download.get(ng_params)

if @download.destroy
    {:success => "ok"}.to_json
    #log to console if download delete is successful
    puts "download delete successful"
else
    halt 500
    #log to console if download delete is unsuccessful
    puts "download delete unsuccessful halt 500"
end
end

downloads.html

<p>Manage downloads</p>
<ul>
     <li ng-repeat="item in items">Title: {{item.title}}, ID: {{item.downloadID}}<a ng-controller="MyCtrl3" ng-click="deletedownload({{item.downloadID}})">Delete</a></li>
</ul>

controllers.js

 //not working...
app.controller('MyCtrl3', ['$scope', '$http', function ($scope, $http) {
$scope.downloaddeleteid = {};
$scope.deletedownload = function() {
    $http({
        method : 'DELETE',
        url : '/view1/downloaddelete',
        data : $scope.downloaddeleteid
    });
}
console.log($scope.deletedownload);
}]);

どんな助けでも大歓迎です。

4

1 に答える 1