私はkeystone.jsに新しいモデル 'Product.js'を作成しました。keystone.jsのモデルdbスキーマを更新します
var keystone = require('keystone');
var Types = keystone.Field.Types;
var Product = new keystone.List('Product', {
map: {name: 'title'},
singular: 'Product',
plural: 'Products',
autokey: {path: 'slug', from: 'title', unique: true}
});
Product.add({
title: {type: String, required: true},
price: {type: Number},
qty: { type: Number },
description: {type: Types.Html, wysiwyg: true, height: 300},
image: {type: Types.CloudinaryImage},
publishedDate: {type: Date, default: Date.now}
});
Product.register();
これらの属性は、管理UIで表示されます。今、私はそれを更新し、新しい属性を動的に追加したい(このファイル内のものを変更することなく)。ルーティングファイルproduct.jsで、このような既存の属性を埋めるために新しいインスタンス(thisの記事の後)を作成することができます。
keystone.createItems({
Product: [{
title: 'Product 3',
price: 34,
qty: 4,
description: "sldfkjslkfjlskdjfsdfj",
__ref: 'prod'
}]
}, function (err, stats) {
stats && console.log(stats.message);
});
このような機能があり、製品スキーマを変更することはできますか?
このモデルでは、mongoose dbに新しい属性を追加したいと考えています。どうしたらいいですか? keystone.jsはdbファイルをWindowsにどこに保存しますか?