safeJoin(joinName, comparisonsArray) {

    if (!(comparisonsArray instanceof Array)) {
      comparisonsArray = [].slice.call(arguments, 1);
    }

    let relationship = this.Model.relationship(joinName);
    if (!relationship) {
      return this;
    }

    return this.join(
      joinName,
      this.__filterHidden__(
        relationship.getModel(),
        comparisonsArray
      )
    );

  }
Join in a relationship. Filters out hidden fields from comparisons.
@param {string} joinName The name of the joined relationship
@param {array} comparisonsArray comparisons to perform on this join (can be overloaded)