为什么上传带有正确型号和控制器信息的照片会出现500错误?

问题描述 投票:0回答:1

[我不确定为什么尝试将与上载的文件相关联的文件上传与登录的当前用户相关联时出现500错误。我怀疑'file_path' => $request->file('fileToUpload')->getClientOriginalName()行,但我不确定。

我的意图是将file_path信息与用户id一起存储到数据库。我在做什么错,我该如何解决?

这里是我的控制器:

public function upload(Request $request, Photo $photo) {
    $uploadedPhoto = $request->user()->photos()->create([
        'file_path' => $request->file('fileToUpload')->getClientOriginalName()
    ]);

    return response()->json($photo->with('user')->find($uploadedPhoto->id));
}

这里的照片模特:

class Photo extends Model {
protected $fillable = ['file_path'];

public function user() {
    return $this->belongsTo(User::class);
  }
}

这里是用户模型:

public function photos() {
    return $this->hasMany(Photo::class);
}

这是我的迁移表:

public function up() {
    Schema::create('photos', function (Blueprint $table) {
        $table->id();
        $table->string('file_path', 140);
        $table->integer('likes_amount')->unsigned();
        $table->timestamps();
        $table->foreign("id")->references('id')->on('users')->onDelete('cascade');
    });
}

[我不确定为什么尝试将与上载的文件相关联的文件上传与登录的当前用户相关联时出现500错误。我是...

php laravel debugging model
1个回答
0
投票

尝试在您的控制器中这样:(按照步骤操作,并根据需要更改代码)

© www.soinside.com 2019 - 2024. All rights reserved.