2016-09-20 13 views
1

私はajax経由でコントローラにデータをポストするフォームを持っています。SilverStripe 4のフロントエンドフォームからファイルをデータベースに保存できません

// Create new upload instance 
$upload = Upload::create(); 

// Create new file instance 
$file = File::create(); 

// Upload the file 
$upload->loadIntoFile($fileData, $file, $this->folderName); 

// Get the file from the Upload 
$uploadedFile = $upload->getFile(); 

// Get the file from the Upload 
$write = $uploadedFile->write(); 

イメージは正常にアップロードされますが、ファイルは[ファイル]テーブルに書き込まれません。

エラーは報告されていません。

+0

これは、[SilverStripe問題追跡]に適しかもしれません(https://github.com/silverstripe/silverstripe-framework/issues)の4.xは、そのアルファ段階にとどまっていることから –

+2

@RobbieAverillうん、私はそれが私が間違っていたことがあったかもしれないと思った、私はSS3でこれを試して、ファイルが正しく書かれています。私はレポにバグを記録しました。 – nickspiel

+0

この質問は、SilverStripe 4 – wmk

答えて

0

これはファイルが公開されていない場合の問題かもしれません。 FileFile_Liveの表を確認しましたか?おそらく関連する議論は:https://github.com/silverstripe/silverstripe-framework/issues/6048

+0

の事前に安定したアルファ版であるため、議論の対象外としています。これは 'File'と' File_Live'です。 'File'には約9個のエントリーがあり、' File_Live'には約90個のものがあります。また、ファイルを公開するにはどうしたらいいですか?私はどこにでもそのオプションが表示されません。 – nickspiel

+1

残念ながら、ファイル公開はまだ実装されていません。次のアルファリリースのリストにあります:https://github.com/silverstripe/silverstripe-asset-admin/issues/169。今のところ、自分のコードのどこかで 'File-> publish( 'Stage'、 'Live')を呼び出す必要があります。 –

関連する問題