1

我想要做的:指定一个路由(使用iron-router),它在访问时开始下载文件。该文件包含来自应用程序 mongo-Databases 的信息。

用例:我正在开发一个流星离线网络应用程序,它也被导出为 android 应用程序。在应用程序中,用户可以保存几个不同的数据/信息。用户应该能够从应用程序内部导出和导入该数据(例如,当他想要切换设备时)。 可能有一个解决方案,这与我的(这个)方法完全不同,我当然也对此持开放态度。

附加信息:我的 mongo-Databases 是本地的(仅限客户端)使用groundDB。如果流星应用程序作为 android 应用程序运行时该解决方案也能正常工作,那将是完美的。文件的实际格式很小(类似于 csv / json / ... )。

当前方法:

// Define route...
Router.route('/download', function(){
/**
 * Combine data from different Mongo
 * Collections in one js variable in JSON format:
 **/
  var dataToDownload = [];
  dataToDownload[0] =        Collection.find().fetch();
  dataToDownload[1] = AnotherCollection.find().fetch();

/** 
 * Convert JSON to string for download (not sure
 * if necessary?!):
 **/
  var data = "text/json;charset=utf-8,"
    + encodeURIComponent(JSON.stringify(dataToDownload));

/**
 * This obviosly doesn't work since it's trying to 
 * render a template which has the name equal to 
 * my JSON string:
 **/
  this.render(data);
});

基本上我正在寻找this.render(data);用某物代替的东西。确实如此(在伪代码中)this.download(data);

4

0 回答 0