PouchDB-첨부 파일 삭제
다음을 사용하여 PouchDB에서 첨부 파일을 삭제할 수 있습니다. removeAttachment() 방법.
통사론
다음은 removeAttachment()방법. 이 메서드에는 문서 ID, 첨부 파일 ID 및 _rev 값을 전달해야합니다. 이 메서드는 선택적 콜백 함수도 허용합니다.
db.removeAttachment ( docId, attachmentId, rev, [callback] );
예
PouchDB에 ID가있는 문서가 있다고 가정합니다. 001, 직원의 아이디, 이름, 나이, 명칭, 첨부 파일이 포함되어 있습니다.
{
name: 'Raju',
age: 23,
designation: 'Designer',
_attachments: {
'att_1.txt': {
content_type: 'text/plain',
digest: 'md5-k7iFrf4NoInN9jSQT9WfcQ==',
data: 'AA=='
}
},
_id: '001',
_rev: '2-cdec6c9f45ddbee7d456945654742d43'
}
다음은이 문서의 첨부 파일을 삭제하는 예입니다. 001 PouchDB에 저장, 사용 removeAttachment() 방법.
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('my');
db.removeAttachment('001', 'att_1.txt', '2-cdec6c9f45ddbee7d456945654742d43',
function(err, res) {
if (err) {
return console.log(err);
} else {
console.log(res+"Attachment Deleted successfully")
}
});
위의 코드를 이름으로 파일에 저장하십시오. Remove_Attachment.js. 명령 프롬프트를 열고 다음을 사용하여 JavaScript 파일을 실행합니다.node 아래 그림과 같이.
C:\PouchDB_Examples >node Remove_Attachment.js
이렇게하면 문서의 첨부 파일이 제거되고 아래와 같이 콘솔에 메시지가 표시됩니다.
Attachment deleted successfully
삭제 후 다음 코드를 실행하여 문서의 내용을 확인할 수 있습니다.
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('my_d');
//Reading the Document
db.get('001',{attachments: true}, function(err, doc) {
if (err) {
return console.log(err);
} else {
console.log(doc);
}
});
이 코드를 다른 이름으로 저장 read.js그것을 실행하십시오. 실행시 아래와 같이 첨부 파일을 삭제 한 후 문서의 내용을 가져옵니다.
{
name: 'Raju',
age: 23,
designation: 'Designer',
_id: '001',
_rev: '3-da775487a6ed0495f2e49c543384f8e8'
}
원격 문서에서 첨부 파일 제거
서버 (CouchDB)에 원격으로 저장된 데이터베이스에서 기존 문서의 첨부 파일을 삭제할 수 있습니다.
이렇게하려면 데이터베이스 이름 대신 읽을 문서가 포함 된 CouchDB의 데이터베이스 경로를 전달해야합니다.
예
다음과 같은 데이터베이스가 있다고 가정합니다. my_databaseCouchDB 서버에서. 그런 다음 URL을 사용하여 CouchDB의 데이터베이스 목록을 확인하면http://127.0.0.1:5984/_utils/index.html 다음 스크린 샷이 표시됩니다.
그리고 이름이 지정된 데이터베이스를 선택하면 my_database, 아래 그림과 같이 내용을 볼 수 있습니다.
이 문서에 아래와 같이 첨부 파일이 있다고 가정합니다.
다음은 위에서 언급 한 문서의 첨부 파일을 삭제하는 예입니다. 001 라는 데이터베이스에 존재하는 my_database CouchDB 서버에 저장됩니다.
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('http://localhost:5984/my_database');
db.removeAttachment('001', 'att_1.txt', '2-049f1c4ffa54576ec0947b65e34de423',
function(err, res) {
if (err) {
return console.log(err);
} else {
console.log(res+"Attachment Deleted successfully")
}
});
위의 코드를 이름으로 파일에 저장하십시오. Remote_Delete_Attachment.js. 명령 프롬프트를 열고 다음을 사용하여 JavaScript 파일을 실행합니다.node 아래 그림과 같이.
C:\PouchDB_Examples >node Remote_Delete_Attachment.js
이렇게하면 기존 첨부 파일이 제거되고 다음 메시지가 표시됩니다.
Attachment Deleted successfully
문서를 다시 방문하면 다음 스크린 샷과 같이 첨부 파일이 삭제 된 것을 알 수 있습니다.