我想在数据库中存储图像路径。我在vendor\laravel\framework\src\Illuminate\Foundation\Auth\RegistersUsers.php下的控制器代码如下:
public function register(Request $request)
{
$this->validator($request->all())->validate();
if($request->hasFile('image')) {
$image_name = $request->file('image')->getClientOriginalName();
$image_path = $request->file('image')->store('public');
$user->image = Storage::url($image_name);
$user->save();
}
event(new Registered($user = $this->create($request->all())));
// $this->guard()->login($user); disable autologin for new users
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}我收到以下错误: RegistersUsers.php第40行中的ErrorException :从空值创建默认对象

。
正在将图像保存在公用文件夹中,但无法在用户表数据库中保存图像路径。用户表的模式
Schema::create('users', function (Blueprint $table) { $table->increments('user_id'); $table->string('name'); $table->string('image'); $table->rememberToken(); $table->timestamps();
如何继续将镜像路径存储在数据库的用户表中
发布于 2017-04-19 15:17:26
您还没有初始化变量$user,因此在使用它之前,您必须添加$user = new User;,假设您已经有了use App\User;
或者$user = new \App\User;,如果你不想的话。
更新如果您试图更新现有的用户记录,则必须初始化$user变量,方法是根据应在请求中发送的主键进行选择,然后执行如下初始化:
$user_id = $request->input('user_id');
$user = User::find($user_id);发布于 2019-07-26 16:14:00
使用下面的简单方法:
$user = User::where('id', '=', $id)->first(); // where id is method param from url or request object
$user->save();当更新多个表时,这也更容易,其中子表中的is具有外键,并且需要在更新过程中显式定义。
此外,在$id是该对象表的主键的情况下,$user = User::find($id);通常也有效
https://stackoverflow.com/questions/43488754
复制相似问题