3

次の流星パッケージを使用して画像をアップロードしています

https://github.com/CollectionFS/Meteor-CollectionFS

私が使用しているコード

Uploads =new FS.Collection('uploads',{
  stores: [new FS.Store.FileSystem('uploads',{path:'~/projectUploads'})]
});

if (Meteor.isClient) {

  Template.makedobox3.events({

       'change .fileinput':function(event,template){
        FS.Utility.eachFile(event,function(file){
        var fileObj=new FS.File(file);
        Uploads.insert(fileObj,function(err){
            console.log(err);
        });


      })
   }
  });  
}

コンソールでファイルをアップロードしようとするとエラーが発生します

M…rm…e.errorClass {エラー: 404、理由: "メソッドが見つかりません"、詳細: 未定義、メッセージ: "メソッドが見つかりません [404]"

ウィンドウ環境です。自動公開および安全でないパッケージがインストールされています。何が欠けているのかわからないのですか?

4

1 に答える 1

5

サーバー側でもこのコレクションを定義していることを確認してください。

Uploads =new FS.Collection('uploads',{
    stores: [new FS.Store.FileSystem('uploads',{path:'~/projectUploads'})]
});

メソッドが見つからない理由は、コレクションがサーバー側 (/serverフォルダー内) で定義されていないかif(Meteor.isServer) {if(Meteor.isClient).

代替案の 1 つは、Meteor が同形であるため、コレクション定義をMeteor.isClientブロックから移動して、クライアントとサーバーの両方で実行することです。

于 2015-06-18T10:07:26.590 に答える