簡體   English   中英

流星渲染來自嵌套嵌套集合的數據

[英]Meteor render data from embeded, nested collection

我一直在嘗試從嵌套集合中獲取數據而沒有任何運氣,除了使用html中的點表示法外,其他方法似乎都無效。

我基本上想要的是從嵌套集合中獲取所需的數據。 我正在嘗試為圖像和音頻文件構建文件上傳,然后使用文件的簡單方法。 我正在使用cfs:standard-packages和cfs:filesystem軟件包。

下面的代碼顯示了一個我不想要的工作示例,例如,提取整個文件對象並檢索html中的數據。 如果我可以在mongo命令中使用點表示法,那將是完美的。 我也可以滿足_each的要求,但我更希望僅獲取每個數據庫調用所需的數據。 如您所見,我在此處傳遞整個文件對象的ID。 Uploads.find({_id:Session.get('getpic')}); 順便說一句,實際文件存儲在本地服務器上的文件夾中。

集合:

 {
    "_id" : "DXFkudDGCdvLpPALP",
    "original" : {
        "name" : "drink.png",
        "updatedAt" : ISODate("2015-04-30T07:14:56.000Z"),
        "size" : 127944,
        "type" : "image/png"
    },
    "uploadedAt" : ISODate("2015-07-11T21:53:32.526Z"),
    "copies" : {
        "uploads" : {
            "name" : "drink.png",
            "type" : "image/png",
            "size" : 127944,
            "key" : "uploads-DXFkudDGCdvLpPALP-drink.png",
            "updatedAt" : ISODate("2015-07-11T21:53:32.000Z"),
            "createdAt" : ISODate("2015-07-11T21:53:32.000Z")
        }
    }
}

HTML

<template name="renderImages">
{{#each showpic}}
    <img width="300" height="300" src="/projectuploads/{{copies.uploads.key}}"/>
{{/each}}

使用Javascript:

Template.renderImages.helpers({
    showpic: function() {
    return Uploads.find({_id:Session.get('getpic')});
  }
});

find查詢中指定返回的字段,如下所示

return Uploads.find({_id:Session.get('getpic')}, { fields: {'copies.uploads.key': 1} } );

但是一個字。 在這里,您可以在瀏覽器緩存中查詢minimongo(在客戶端上),因此基本上是免費的。 請注意僅將這些字段publish到您實際希望在那里的客戶端。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM