获取附件的URL

Kue*_*per 5 couchdb couchapp

我正在使用CouchApp构建一个简单的Web应用程序,允许上传和管理图片.实际图像文件存储为doc的附件,如下所示.

{
  "_id":"09fe82d75a26f9aa5e722d6b220180d2",
  "_rev":"2-5797b822c83b9d41545139caa592f611",
  "data":"some additional fields with info about the image",
  "_attachments":
  {
    "foo.jpg":
    {
      "stub":true,
      "content_type":"image/jpeg",
      "length":23721
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

但是为了在html中集成图像,我需要附件的URL.我怎么得到这个网址?

我正在使用evently和mustache来生成网页.下面是用于读取数据的data.js:

function(data) {
  return {
    items : data.rows.map(function(r) {
      return {
        id : r.value._id,
        rev : r.value._rev,
        title : r.value.description,
        url : "how am i supposed to do this?"
      };
    })
  };
};
Run Code Online (Sandbox Code Playgroud)

Jør*_*gen 12

附件的URL将是 http://domain/database/09fe82d75a26f9aa5e722d6b220180d2/foo.jpg

如果您的文件名是动态的,则必须迭代_attachments对象并在途中获取密钥 - 这就是您的文件名所在的位置.

for(var filename in r.value._attachments){break;}
// ...
url : '<database>/' + r.value._id +'/'+filename;
Run Code Online (Sandbox Code Playgroud)