データベースにオブジェクトを挿入するために呼び出す流星 (スキーマを使用) に次のメソッドがあります。
userAddOrder: function(newOrder, prize) {
var currentPrize;
if (prize == undefined) {
currentPrize = undefined;
}
else{
currentPrize = prize;
}
// Ininitalize the newOrder fields.
// Check if someone is logged in
if(this.userId) {
newOrder.userId = this.userId;
// Set the weight and price to be processed by the admin in the future
newOrder.weight = undefined;
newOrder.price = currentPrize;
newOrder.status = false;
newOrder.receiveDate = new Date();
newOrder.deliveryDate = new Date();
Orders.insert(newOrder);
} else {
return;
}
},
大まかに言えば、「賞品」パラメーターをパラメーターとして渡す必要があります。問題は、賞品を構成したにもかかわらず、テンプレートを介してメソッドに渡す方法が見つからなかったことです。私が試した 1 つの方法は、ヘルパーを作成してそれを渡すことです。
{{#autoForm schema="UserOrderSchema" id="userInsertOrderForm" type="method" meteormethod="userAddOrder,prizeRequest"}}
しかし、それはエラーを返します:
「メソッドが見つかりません」
もう 1 つの方法は、単純なフォーム (提供されているオートフォームではない) を使用して、js ファイル内のメソッドを呼び出すことです。2 番目はうまくいくと思いますが、テンプレート全体を書き直したくありません。それなしでそれを行う方法はありますか?