diff --git a/lib/datasource.js b/lib/datasource.js index 8b5d51ab..774362c7 100644 --- a/lib/datasource.js +++ b/lib/datasource.js @@ -399,7 +399,8 @@ DataSource.prototype.defineRelations = function (modelClass, relations) { var params = { foreignKey: relation.foreignKey, as: name, - model: model + model: model, + options: relation.options }; if (throughModel) { params.through = throughModel; @@ -418,7 +419,8 @@ DataSource.prototype.defineRelations = function (modelClass, relations) { foreignKey: relation.foreignKey, as: name, model: targetModel, - through: model + through: model, + options: relation.options }; modelClass[relation.type].call(modelClass, name, params); } @@ -444,7 +446,8 @@ DataSource.prototype.defineRelations = function (modelClass, relations) { var params = { foreignKey: r.foreignKey, as: rn, - model: targetModel + model: targetModel, + options: r.options }; if (throughModel) { params.through = throughModel; diff --git a/lib/relation-definition.js b/lib/relation-definition.js index 13d1914e..1b590bf3 100644 --- a/lib/relation-definition.js +++ b/lib/relation-definition.js @@ -70,6 +70,7 @@ function RelationDefinition(definition) { this.keyThrough = definition.keyThrough; this.multiple = (this.type !== 'belongsTo' && this.type !== 'hasOne'); this.properties = definition.properties || {}; + this.options = definition.options || {}; this.scope = definition.scope; } @@ -363,7 +364,8 @@ RelationDefinition.hasMany = function hasMany(modelFrom, modelTo, params) { modelTo: modelTo, multiple: true, properties: params.properties, - scope: params.scope + scope: params.scope, + options: params.options }); if (params.through) { @@ -872,7 +874,8 @@ RelationDefinition.belongsTo = function (modelFrom, modelTo, params) { modelFrom: modelFrom, keyFrom: fk, keyTo: idName, - modelTo: modelTo + modelTo: modelTo, + options: params.options }); modelFrom.dataSource.defineForeignKey(modelFrom.modelName, fk, modelTo.modelName); @@ -1082,7 +1085,8 @@ RelationDefinition.hasOne = function (modelFrom, modelTo, params) { keyFrom: pk, keyTo: fk, modelTo: modelTo, - properties: params.properties + properties: params.properties, + options: params.options }); modelFrom.dataSource.defineForeignKey(modelTo.modelName, fk, modelFrom.modelName);