Laravel 5 调用未定义的方法文件::save()

Laravel 5 调用未定义的方法文件::save(),laravel-5,laravel-5.6,Laravel 5,Laravel 5.6,我已经检查了所有同一问题的线程,但仍然无法找出为什么不工作。我有这个功能 namespace App\Http\Controllers\Admin; use App\MediaKit; use Illuminate\Http\Request; use App\Http\Controllers\Controller; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Input; use Illuminate\Su

我已经检查了所有同一问题的线程,但仍然无法找出为什么不工作。我有这个功能

namespace App\Http\Controllers\Admin;

use App\MediaKit;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Input;
use Illuminate\Support\Facades\Redirect;
use Validator ;
use Illuminate\Support\Facades\File;

class MediaKitController extends Controller
{
   public function store(Request $request)
   {
      $this->validate($request, [

            'filename' => 'required',
            'filename.*' => 'mimes:doc,pdf,docx,zip,png'
      ]);

    if($request->hasfile('filename'))
    {
        foreach($request->file('filename') as $files)
        {
            $name = $files->getClientOriginalName();
            $files->move(public_path().'/files/', $name);  
            $data[] = $name;  
        }
    }

    $files= new \File();
    $files->filename=json_encode($data);       
    $files->save();

    return back()->with('success', 'Your files has been successfully added');
}
当我尝试将文件保存到数据库时,出现以下错误。这些文件保存在目录中

“调用未定义的方法illumb\Support\Facades\File::save()”

  • 替换此
    使用light\Support\Facades\File到您的模型名称空间
  • 替换此
    $files=new\File()
    $files=新文件()

  • 谢谢你的回答,但是在哪里替换#1?谢谢,这解决了问题。还有一个问题-你知道为什么上传的文件名称周围有
    []
    ?@Ivanov可能是
    json\u encode()
    的结果。当你从db得到它时,你会解码吗?我建议您使用
    protected$casts=['filename'=>'array']到模型()。Eloquent可以自动对数组进行json_编码/json_解码。谢谢@IndianCoding!