Некогда было ответить на свой же вопрос, но вот решение, которое было применено:
https://gist.github.com/yuristrelets/9b543be8cd8af...
Немного поясню:
В copyFrom скопирован “оригинальный” код метода, хотя можно было бы вызвать callParent, но тогда пришлось бы опять повторить все проверки.
Код метода updateHasManyAssociations достаточно прост, он принимает единственный аргумент - id новой модели.
Здесь проходим по всем ассоциациям модели, но “реагируем” только на тип hasMany. Дальше обновляем поле с внешним ключом (хранится в переменной foreignKey) для всех записей связанного стора. Это необходимо для записей, которые уже находятся в сторе.
Для того, чтобы внешний ключ устанавливался автоматически для записей, которые будут добавлены позже мы ищем свойство modelDefaults стора и обновляем в нем свойство с именем внешнего ключа. Объект modelDefaults хранит все дефолтные значения для добавляемых моделей и используется в методе insert стора.
Ну и последний этап - обновляем значение фильтра для связанного стора, это может пригодится для дальнейшей его перезагрузки.