milkcocoaでデータ削除するときはremoveメソッドを使います。
ドキュメントにあるように書くと以下のようになります。
ちなみに以下のコードはnode.jsです。
app.js
var MilkCocoa = require('./milkcocoa');
var milkcocoa = new MilkCocoa('https://{your-app-id}.mlkcca.com');
var dataStore = process.argv[2]; //引数にデータストア名を指定して実行
var db = milkcocoa.dataStore(dataStore);
console.log(dataStore + 'deleteing');
var count = 0;
db.query().limit(10000).done(function(data) {
console.log(count);
data.forEach(function(value) {
db.remove(value.id);
count++;
console.log(count);
});
});
実行するときはこんな感じです。
$ node app (データストア名)
実際に実行すると以下のようになります。
$ node milkdel.js demoDs
demoDs deleteing
connected
0
1
2
3
・
・
・
10000
##セキュリティルール
上手く行かなかった例
データストアを削除したいのでremoveだけ許可にしていました。
demoDs {
permit : remove;
rule: true;
}
この時点で実行すると
$ node milkdel.js demoDs
demoDs deleteing
connected
(反応なし)
という感じになってつまりました苦笑
現時点では データストアをまるっと消すメソッドは無いため、queryを使って取得
-> removeで削除ループ
という実装になります。
demoDs {
permit : query, remove;
rule: true;
}
モチロンallでもok
demoDs {
permit : all;
rule: true;
}
でもセキュリティルールはちゃんと設定したほうが安心ですよ!