修复之前的小bug,加入remove,@removeById

This commit is contained in:
绯村月
2014-02-19 23:33:56 +08:00
parent d34cdba42f
commit 3f04417d8a
2 changed files with 24 additions and 5 deletions

View File

@@ -13,10 +13,10 @@ module.exports = class Model
throw 'docs must be array' if not _.isArray docs
results = []
if docs.length is 1
results = @create docs[0]
else
for doc in docs
results.push @create doc
else
results = @create docs[0]
results
@table : ->
"#{@name.toLowerCase()}s"
@@ -32,15 +32,26 @@ module.exports = class Model
get : (attr) ->
@data[attr]
insert : (data, callback) ->
@insert : (data, callback = null) ->
@collection().insert data, {w:1}, (err, docs) =>
throw err if err
if callback
results = @constructor.createModels docs
results = @createModels docs
callback err, results
@removeById: (id,callback = null)->
@collection().remove {_id: id}, {w: 1},(err,numberOfRemovedDocs)=>
throw err if err
if callback
if numberOfRemovedDocs is 1
callback null,numberOfRemovedDocs
else
callback 'there is more then 1 documents with the same id'
update : (newObj , opts = {},callback) ->
remove: (callback = null)->
@constructor.removeById @data._id,callback
@find : (data, opts = {}, callback = null) ->
if _.isFunction data
callback = data
@@ -51,7 +62,7 @@ module.exports = class Model
@collection().find(data, opts).toArray (err, docs)=>
throw err if err
if callback
results = @constructor.createModels docs
results = @createModels docs
callback err, results
@findById: (id, callback) ->

View File

@@ -1,3 +1,4 @@
User = require '../model/User'
routers =
get:
'/user/signup/': (req, res) ->
@@ -5,6 +6,13 @@ routers =
'/user/login/': (req, res) ->
res.render 'login'
'/': (req,res) ->
User.register 'wangzi','wangzi@gmail','wangzi',(err,results) ->
console.log results
results.remove()
res.end()
post: {}
for item in ['user']