トランザクションを記録するアプリケーションがあり、ユーザーはドロップダウンからカテゴリを選択できます。カテゴリは「ほとんど」静的であり、変更されることはめったにないため、アプリケーションの起動時に読み込まれます。
したがって、私の datacontext.js では、通常どおりにデータを準備します。
var primeData = function () {
var promise = Q.all([
getLookups(),
getBankAccountPartials(null, true)])
.then(applyValidators);
return promise.then(success);
function success() {
datacontext.lookups = {
categories: getLocal('Categories', 'name', true),
transactiontypes: getLocal('TransactionTypes', 'name', true),
payees: getLocal('Payees', 'name', true)
};
log('Primed data', datacontext.lookups);
}
function applyValidators() {
model.applyBankAccountValidators(manager.metadataStore);
}
};
function getLookups() {
return EntityQuery.from('Lookups')
.using(manager).execute()
.then(processLookups)
.fail(queryFailed);
}
現在、時折、管理画面でユーザーがカテゴリを編集および追加できます。categoryadd.js ビューモデルでは、保存コードは次のようになります (抜粋を表示)。
save = function () {
isSaving(true);
datacontext.saveChanges()
.then(goToEditView).fin(complete);
function goToEditView(result) {
router.replaceLocation('#/categorydetail/' + category().id());
}
function complete() {
isSaving(false);
}
},
カテゴリ ルックアップ データだけを更新するにはどうすればよいですか? または、私はこれを間違っているだけで、ルックアップとしてカテゴリを持つべきではないのでしょうか?
ありがとう。