0

10 月の CMS で、フロントエンドの複数ファイルのアップロードを許可するコンポーネントを作成しようとしています。Blueimp jQuery-File-Upload Plugin の既存のフォームに統合しようとしています。10 月の CMS は、コンポーネント メソッドへのデータ送信を可能にする統合 ajax フレームワークを使用するため、Blueimp のデフォルトの代わりにこの ajax メソッドを使用します。

通常のファイルアップロードは次のようになります

$('#gallery').fileupload({
    // Uncomment the following to send cross-domain cookies:
    //xhrFields: {withCredentials: true},
    url: 'path/to/controller'

});

しかし、代わりに次のようなものを使用したいと思います

$('#gallery').fileupload({
    // Uncomment the following to send cross-domain cookies:
    //xhrFields: {withCredentials: true},
    add: function (e, data) {
        data.submit();
        $.request('onUploads', {

            success: function(data){
                console.log(data);

            }
        })
    }

});
4

1 に答える 1

0

OctoberCMS がその上にあるLaravel の Request クラスを使用する必要があります。基本的に、レイアウト ファイルのコード セクションに移動して追加します。

function onUploads()
{
    // Get the file
    $file = Request::file('somefile');

    // Code to do something with it
    // enter code here
}

達成しようとしていることに基づいて、適切なコードを記述してアップロードできます。たとえば、私のソーシャル ログイン プラグインでは、このクラスのメソッドを使用して、選択したソーシャル ネットワークから写真を取得し、プラグインのソーシャル モデルとアップロードされたファイルの間の関係を作成して、フロントエンド ユーザーが写真を表示写真として出力できるようにします。ウェブアプリ。

別の良い方法は、次のようにしてテーマディレクトリに直接アップロードすることRequest::file('somefile')->move(app_path() . '/themes/yourtheme/assets/uploads/');ですが、アップロードサイズを制限し、ファイル名を修正するコードを追加する必要があります. 特に何かを達成するために助けが必要な場合は、遠慮なくコメントしてください。GL HF

于 2015-04-02T20:54:40.883 に答える