Ich benutze Express, um eine sehr einfache Anwendung zu bauen, und ich benutze eckig 1.2.16, eckige Ressource 1.2.16 in dieser Anwendung bin ich Abfragen von Namen aus der Datenbank und versuchen zu löschen sie die Namen req Server aber Server-Seite gehen haben sie sagt nicht definiert und Browser für leere reponse zeigen Fehler, den ich viel versucht, verwendete ich das Problem herauszufinden req.body.id
und req.query.id
aber diese arbeiten auch nichtDelete Anfrage geben leere Antwort Express-Framework mit Mysql
//controller
app.controller('NameController',['$scope','$resource',function($scope,$resource)
{ var nameResource=$resource('/api/Names');
nameResource.query(function(results)
{
\t $scope.Names=results;
});
$scope.Names=[];
$scope.remove=function(id,index)
\t {
\t \t nameResource.$delete(id);
\t \t console.log(id);
\t \t
\t \t $scope.Names.splice(index, 1);
\t }
}]);
//route
app.delete('/api/Names',NamesServerController.removeEntry);
//server controller
module.exports.removeEntry=function(req, res){
\t var abc=req.params.id;
\t var connection=mysql.createConnection({
host:'localhost',
user:'root',
password:'test123',
database:'testing'
\t });
\t connection.connect();
\t
\t connection.query('DELETE FROM NamesTable WHERE id= ?', [req.params.id],function(err,result){
if(err) throw err;
console.log(result);
\t });
<div ng-controller="NameController">
\t <ul>
<li ng-repeat='name in Names'>
<p> {{name.id}}</p>
<button ng-click=remove(name.id,$index)>remove</button>
</li>
</ul>
Ich versuche, diese aber es funktioniert immer noch nicht auf Server-Seite anzeigen Ergebnis null Zeilen bewirkt –
Apologies - ich Ihre Frage falsch verstanden. Sind Sie sicher, dass das mysql-Modul betroffene Zeilen melden soll? Haben Sie in Ihrer Datenbank nachgesehen, ob die Zeilen gelöscht wurden? –