数分前まで機能していたNode.js/Geddyアプリがあります。これを実行しようとすると、次のエラーが発生します。
多くのモデルがありますが、そのうちの1つでこのエラーが発生します。
コンソールにパスが表示されているファイルでは、以下が未定義であるため、エラーが表示されます。
reg[ownedModelName]
どこ
reg = model.descriptionRegistry
そしてownedModelNameはによって与えられます
if (assnKey == 'belongsTo') {
ownerModelName = modelName;
ownedModelName = self.name;
idKey = modelName;
}
else {
ownerModelName = self.name;
ownedModelName = modelName;
idKey = self.name;
}
実際、ownedModelNameの値は知っていますが、 reg[ownedModelName]が未定義である理由はわかりません。
エラーをトリガーするモデルは次のようになります。
var RenderingForm = function () {
this.defineProperties({
name: {type: 'string'},
description: {type: 'string'},
mode: {type: 'string'},
helpText: {type: 'string'},
noEvaluation: {type: 'boolean'},
compatibleProblemTypes: {type: 'string'}
});
this.validatesPresent('name');
this.validatesPresent('description');
};
RenderingForm = geddy.model.register('RenderingForm', RenderingForm);
なぜそれが定義されていないのですか、どうすれば問題を解決できますか?
アップデート:
別のパーティションに同じアプリを作成しようとしましたが、機能しませんでした。古いアプリを再度実行しようとすると、同じエラーが発生しますが、以前とは別のモデルで発生します。