コレクションにアップグレードしようとしたときにコンソールでこのエラーが発生する:流星はアップセートを許可しますか?
"更新に失敗しました:アクセスが拒否されました。制限付きコレクションで許可されていません。ここで
は私が指定した許可ルールです:ここでは
if (Meteor.isClient) {
Meteor.subscribe('customers');
}
customers = Customers
if (Meteor.isServer) {
Meteor.publish('customers', function() {
return customers.find();
});
customers.allow({
insert: function (document) {
return true;
},
update: function() {
return true;
},
remove: function() {
return true;
}
});
}
はアップサートの一部です:
Customer.prototype.create = function (name, address, phone, cell, email, website, contact, shipping) {
var attr = {
name : name,
address : address,
phone : phone,
cell : cell,
email : email,
website : website,
contact : contact,
shipping : shipping
};
Customers.upsert(Customers.maybeFindOne(attr)._id, attr);
return new Customer(attr);
};
ありがとうございます!それがトリックでした。私はまた、挿入と更新を分割し、$ setを使うことに成功しました。 – user3203772