我正在使用Laravel并试图建立一个画廊,我正在测试文件的上传,但是当我附加一个文件并单击“提交”时,使用测试设置无法获得积极的结果。代码在下面
GalleryController
// Store Gallery
public function store(Request $request){
// Get Request Input
$name = $request->input ('name');
$description = $request->input ('description', '');
$cover_image = $request->input ('cover_image');
$owner_id = 1;
// Check Image Upload
if($cover_image){
die ('YES');
} else {
die ('NO');
}
}
表单设置如下
{!! Form::open(array('action' => 'GalleryController@store', 'enctype' => 'multipart/form-data')) !!}
{!! Form::label ('name', 'Name') !!}
{!! Form::text ('name', $value = null, $attributes = ['placeholder' => 'Gallery Name', 'name' => 'name']) !!}
{!! Form::label ('description', 'Description') !!}
{!! Form::text ('name', $value = null, $attributes = ['placeholder' => 'Gallery Description', 'name' => 'Description']) !!}
{!! Form::label ('cover_image', 'Cover Image') !!}
{!! Form::file('cover_image') !!}
{!! Form::submit ('Submit', $attributes = ['class' => 'button']) !!}
{!! Form::close() !!}
感谢任何帮助 谢谢
答案 0 :(得分:3)
您的表格看起来正确,很可能是您的控制器正在检索上载的文件。
根据docs,要检索上载的文件,您应该使用$request->file()
:
$request->file('cover_image');
指向上述文档的链接还将继续说明如何正确检查文件并存储文件。
答案 1 :(得分:0)
//use input facades.
use File;
use Illuminate\Support\Facades\Input;
public function store(Request $request){
// Get Request Input
$name = $request->input ('name');
$description = $request->input ('description', '');
$cover_image = $request->input ('cover_image');
$owner_id = 1;
// Check Image Upload
if(Input::hasFile('cover_image'){
die ('YES');
}
else {
die ('NO');
}
}