1

やりたいこと:アクセス時にファイルのダウンロードを開始するルートを ( iron-routerで) 指定します。このファイルには、アプリケーション mongo-Databases からの情報が含まれています。

ユースケース: Android アプリとしてもエクスポートされるmeteorオフラインWeb アプリケーションを開発しています。アプリ内で、ユーザーはいくつかの異なるデータ/情報を保存できます。ユーザーは、アプリ内からそのデータをエクスポートおよびインポートできる必要があります (たとえば、デバイスを切り替えたい場合)。 私の(この)アプローチとはまったく異なる解決策があるかもしれません。もちろん、私もそれに対してオープンです。

追加情報:私の mongo-Databases は、 groundDBを使用してローカル (クライアントのみ)です。meteor-application が android app として実行されているときにもソリューションが機能するなら、それは完璧でしょう。ファイルの実際の形式はマイナーです (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);
});

基本的に、sth に置き換えるものを探していthis.render(data);ます。それは(疑似コードで)しthis.download(data);ます。

4

0 に答える 0