函数App\Http\Controllers\FileController::store()的参数太少,传递了0,



我想在存储方法中插入使用的数据文件(数组$data(,就像RegisterController.php的创建方法一样,使用验证系统,但它会给我错误

函数App\Http\Controllers\FileController::store((的参数太少,传递了0,而需要1。

FileController.php

public function store(array $data)
{
$file = new File();
$jdate = Carbon::now();
$request = app('request');
if ($request->hasFile('image')) {
$image = $request->file('image');
$imagee = Crypt::encryptString($image);
$image->storeAs("publicprofiles\".$jdate->format('F').$jdate->year,$imagee.'.'.$image->extension());
$file->image = "profiles\".$jdate->format('F').$jdate->year."\".$imagee.'.'.$image->extension(); 
}
$im = $file->image;
$validator = Validator::make($data, [
'category_id'=> ['bail','required'],
'titre'      => ['bail','exclude_unless:category_id,1', 'string', 'min:3', 'max:255'],
'name'       => ['bail','exclude_unless:category_id,1', 'string', 'min:3', 'max:255'],
'last'       => ['bail','exclude_unless:category_id,1', 'string', 'min:2', 'max:255'],
'image'      => ['bail','mimes:jpeg,jpg,png,gif,svg','exclude_unless:category_id,1','max:2048'],
]);
return File::create([
'category_id'  => $data['category_id'],
'titre'        => $data['titre'], 
'name'         => $data['name'],
'last'         => $data['last'], 
'image'        => $im 
]);
return Redirect::to("/")
->withSuccess('Great! file has been successfully uploaded.');
}

从需要实例化请求的表单中获取数据:

use IlluminateHttpRequest;

public function store(Request $request)
{
......

RegisterController中有一个名为RegistersUsers的特性,它处理请求值,然后将它们发送到RegisterControllercreate方法,以创建新的User。在您的情况下,存储方法需要一个参数,但您没有从任何位置传递该参数。您必须使用Request类来获取或发布请求数据,也可以使用request()全局帮助程序。

如果你使用类,那么它就像

use IlluminateHttpRequest;
public function store(Request $request)
{
$a = $request->a;
}

或者如果您使用辅助功能

public function store()
{
$a = request('a');
}

相关内容

  • 没有找到相关文章

最新更新