1
私はサーバー側にcouchdbを、モバイルアプリケーション用にpouchdbを持っています。私は、各ユーザーが参照番号(ref_no)に基づいて自分のデータを取得したい。私はすでにそれをフィルタリングしようとしましたが、couchdbへのデータ同期はありません。私はpouchdb/couchdbのドキュメントの手順に従います。しかし、私が従うステップが正しいかどうかはわかりません。私が間違えたら私を案内してください。以下はクライアント側の私のコードです。pouchdbとcouchdbの間のレプリケーションをフィルタリングする方法
constructor(public http: Http, public settingProvider:SettingProvider) {
this.db = new PouchDB('task');
}
initializeRemote(url,ref_no){
this.remote = url + '/task';
let options = {
live: true,
retry: true,
filter:'task/byRef_no',
query_params: {'ref_no':ref_no}
};
this.db.sync(this.remote, options)
.on('change', function(change){
console.log('InspectionTask provider change!', change);
})
.on('paused', function(info){
console.log('InspectionTask provider paused!', info);
})
.on('active', function(info){
console.log('InspectionTask provider active!', info);
})
.on('error', function(err){
console.log('InspectionTask provider error!', err)
});
}
これはサーバー側のフィルタです。
{
_id: '_design/task',
filters: {
myfilter: function (doc, req) {
return doc.ref_no === req.query.ref_no;
}
}
}
を。私はまだフィルタとデータを同期させることはできません。フィルタを削除すると、すべて正常に動作します。 – Akmal
あなたのフィルター機能は文字列の権利ですか? –
すみません。私はすでに少しの変更とあなたの助けを借りてそれをしました。ありがとう – Akmal