dyn*_*mic 6 php database authentication image laravel-5.4
我想将图像路径存储在数据库中.我的控制器代码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());
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:RegistersUsers.php第40行中的ErrorException:从空值创建默认对象
.
图像将保存在公用文件夹中,但无法在用户表数据库中保存图像路径.用户表的模式
Schema::create('users', function (Blueprint $table) {
$table->increments('user_id');
$table->string('name');
$table->string('image');
$table->rememberToken();
$table->timestamps();
如何继续将图像路径存储在数据库的用户表中
你还没有初始化变量,$user所以在控制器中使用它之前你必须$user = new User;假设你已经有了use App\User;
或者$user = new \App\User;如果你不这样做.
更新
,如果你想更新你已经初始化现有的用户记录$user通过选择基于其变量应在请求被发送,然后做这样的初始化主键:
$user_id = $request->input('user_id');
$user = User::find($user_id);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35429 次 |
| 最近记录: |