제출할 때 couchdb 문서를 만들고 첨부 파일을 문서에 추가하는 웹 양식을 만들려고합니다. 튜토리얼/다른 포럼에서 2 단계 프로세스로이 작업을 수행해야한다는 것을 알았습니다 (futon과 마찬가지로). 업로드 할 문서를 가져올 수 있지만 첨부 파일을 업로드 할 수없는 것 같습니다.html 양식과 jquery를 통한 CouchDB 문서 첨부 파일
html 파일에 : 나는 여러 가지 방법을 시도했습니다, 현재 내가 뭔가 같이 할
이function create_document(){
var db_name = 'uploader';
var db = $.couch.db(db_name);
var data={}
data['fname']=document.form.field.value;
db.saveDoc(data, {
success: function (data) {
add_attachment(db,data);
},
error: function() {
alert("Cannot save the thread.");
}
});
}
function add_attachment(db,data){
var docID = data.id;
var dbName = db.name;
var form = $("#upload-form");
$.showDialog("dialogue.html", {
load: function(elem) {
$("input[name='_rev']", elem).val(data._rev);
},
submit: function(data, callback) {
if (!data._attachments || data._attachments.length == 0) {
callback({_attachments: "Please select a file to upload."});
return;
}
var form = $("#upload-form");
form.find("#progress").css("visibility", "visible");
form.ajaxSubmit({
url: db.uri + $.couch.encodeDocId(docID),
success: function(resp) {
form.find("#progress").css("visibility", "hidden");
location.href = "?" + encodeURIComponent(dbName) +
"/" + $.couch.encodeDocId(docID);
}
});
}
});
}
$(document).ready(function() {
$("button#submit").click(function(event) {
create_document();
});
});
이 자바 스크립트는 다음과 같습니다 다음
<!DOCTYPE HTML>
<html>
<head>
<title>Document submission</title>
<style type="TEXT/CSS" media="all">
</style>
</head>
<body>
<table>
<form id="form" name="form" action="">
<tr>
<td>Field</td>
<td><input type="text" required="required" name="field">
<span id="required">*</span></td>
</tr><tr>
</tr><tr>
<td></td><td><button type="button" id="submit">Select Attachment</button><td>
</tr>
</form>
</table>
</body>
<script src="/_utils/script/json2.js"></script>
<script src="/_utils/script/jquery.js"></script>
<script src="/_utils/script/jquery.couch.js"></script>
<script src="/_utils/script/jquery.form.js"></script>
<script src="/_utils/script/jquery.dialog.js"></script>
<script type="text/javascript" src="basic.js"></script>
</html>
하고있는 파일이라고 basic.js 꽤 많이 futon.browse.js uploadAttachment 세그먼트에서 가져 왔습니다. dialogue.html 파일은 couchdb의 www/dialog/_upload_attachment.html을 그대로 복사 한 것입니다. 그런 다음 모든 파일 (기본 html, basic.js 및 dialogue.html)이 CouchDB 디자인 문서 (업 로더라는 데이터베이스)에 업로드됩니다.
문서가 잘 작성되었지만 내가하는 일과 관계없이 첨부 파일은 저장되지 않습니다. 여러 가지 방법 중 하나를 시도해도 여러 부분으로 구성된 양식에 대한 오류가 발생하거나이 경우 인식 할 수있는 오류가 전혀 발생하지 않습니다.
내가 뭘 잘못하고 있는지 아는 사람이 있습니까?