commit
1010d5d64d
|
@ -3,5 +3,6 @@ doc
|
||||||
coverage.html
|
coverage.html
|
||||||
coverage
|
coverage
|
||||||
v8.log
|
v8.log
|
||||||
|
.idea**
|
||||||
|
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
|
|
@ -841,6 +841,7 @@ AbstractClass.hasMany = function hasMany(anotherClass, params) {
|
||||||
return {where: x};
|
return {where: x};
|
||||||
}, {
|
}, {
|
||||||
find: find,
|
find: find,
|
||||||
|
all: all,
|
||||||
destroy: destroy
|
destroy: destroy
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -859,6 +860,23 @@ AbstractClass.hasMany = function hasMany(anotherClass, params) {
|
||||||
}.bind(this));
|
}.bind(this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function all(filter,cb) {
|
||||||
|
if (!filter) {
|
||||||
|
filter = {};
|
||||||
|
}
|
||||||
|
if (!filter.where) {
|
||||||
|
filter.where = {};
|
||||||
|
}
|
||||||
|
filter.where[fk] = this.id.toString();
|
||||||
|
|
||||||
|
anotherClass.all(filter,function(err,inst){
|
||||||
|
if (err) return cb(err);
|
||||||
|
if (!inst) return cb(null,[]);
|
||||||
|
else return cb(null,inst);
|
||||||
|
|
||||||
|
}.bind(this));
|
||||||
|
}
|
||||||
|
|
||||||
function destroy(id, cb) {
|
function destroy(id, cb) {
|
||||||
this.find(id, function (err, inst) {
|
this.find(id, function (err, inst) {
|
||||||
if (err) return cb(err);
|
if (err) return cb(err);
|
||||||
|
|
|
@ -542,6 +542,29 @@ function testOrm(schema) {
|
||||||
it('hasMany should be cached', function (test) {
|
it('hasMany should be cached', function (test) {
|
||||||
//User.create(function (e, u) {
|
//User.create(function (e, u) {
|
||||||
// u.posts.create({}, function (e, p) {
|
// u.posts.create({}, function (e, p) {
|
||||||
|
// find all posts for a user.
|
||||||
|
/* User.all(function (err,users) {
|
||||||
|
for (var i=0;i<users.length;i++) {
|
||||||
|
u = users[i];
|
||||||
|
Posts.find(user.id, function(err, posts) {
|
||||||
|
// now check to see that the user has these posts testing the all method of hasMany.
|
||||||
|
u.posts.all(null,function(err, uposts) {
|
||||||
|
test.equal(posts.length,uposts.length);
|
||||||
|
if (post.length == uposts.length) {
|
||||||
|
for (var j=0;j<uposts.length;j++) {
|
||||||
|
for (var k= 0,found=false;k<posts.length;k++) {
|
||||||
|
if (uposts[j] == uposts[k].id) { found = true; break; }
|
||||||
|
}
|
||||||
|
if (!found) test.equal(1,0); // not familliar with test framework here... test.fail()?
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
// find the posts with this user id.
|
||||||
|
// find the posts of the user.
|
||||||
|
|
||||||
|
}
|
||||||
|
})*/
|
||||||
// Finding one post with an existing author associated
|
// Finding one post with an existing author associated
|
||||||
Post.all(function (err, posts) {
|
Post.all(function (err, posts) {
|
||||||
// We try to get the first post with a userId != NULL
|
// We try to get the first post with a userId != NULL
|
||||||
|
|
Loading…
Reference in New Issue