2013年2月21日木曜日

Expressフレームワークで、MongoDBのデータ削除

Expressフレームワークで、MongoDBのデータ削除です。Usersオブジェクトを指定して、Users.remove()で削除できます。GETで削除していますが、POST等にするべきかも。

app.js
app.get('/users/delete/:fullname?', user.delete);
/routes/user.js
var mongoose = require('mongoose');
mongoose.connect('mongodb://userid:password@linus.mongohq.com:10036/dbname');
var UserSchema = new mongoose.Schema({ 
  fullname: String
});
Users = mongoose.model('Users', UserSchema);

exports.delete = function(req, res){
  Users.remove({fullname: req.params.fullname}, function(err) {
    res.redirect('/users/list/');
  });
};
/views/userlist.jade
h2 ユーザー一覧
ul
each alluser in allusers
  li: a(href="/users/profile/#{alluser.fullname}") #{alluser.fullname}
  p: a(href="/users/delete/#{alluser.fullname}") 削除

実際に設定してみたサイトがこちら

0 件のコメント:

コメントを投稿