From 9806feb397e61d1dae1f49f63a47df5b9731ed48 Mon Sep 17 00:00:00 2001 From: ningsuhen Date: Fri, 24 Apr 2015 15:22:50 +0530 Subject: [PATCH] Fix for bug - https://github.com/strongloop/loopback-datasource-juggler/issues/571 --- lib/relation-definition.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/relation-definition.js b/lib/relation-definition.js index c6596d55..a4b4e506 100644 --- a/lib/relation-definition.js +++ b/lib/relation-definition.js @@ -865,7 +865,13 @@ var throughKeys = function(definition) { var fk2 = definition.keyThrough; } } else if (definition.modelFrom === definition.modelTo) { - return findBelongsTo(modelThrough, definition.modelTo, pk2); + return findBelongsTo(modelThrough, definition.modelTo, pk2). + sort(function (fk1, fk2) { + //Fix for bug - https://github.com/strongloop/loopback-datasource-juggler/issues/571 + //Make sure that first key is mapped to modelFrom + //& second key to modelTo. Order matters + return (definition.keyTo === fk1) ? -1 : 1; + }); } else { var fk1 = findBelongsTo(modelThrough, definition.modelFrom, definition.keyFrom)[0];