Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

521
Vistas
laravel-5.4 - error: Creando un objeto predeterminado a partir de un valor vacío

Quiero almacenar la ruta de la imagen en la base de datos. El código de mi controlador en vendor\laravel\framework\src\Illuminate\Foundation\Auth\RegistersUsers.php sigue:

 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()); }

Recibo el siguiente error: ErrorException en RegistersUsers.php línea 40: Creación de un objeto predeterminado a partir de un valor vacío ingrese la descripción de la imagen aquí.

La imagen se guarda en una carpeta pública, pero no se puede guardar la ruta de la imagen en la base de datos de la tabla de usuarios. esquema de tabla de usuario
Schema::create('users', function (Blueprint $table) { $table->increments('user_id'); $table->string('name'); $table->string('image'); $table->rememberToken(); $table->timestamps();

cómo proceder para almacenar la ruta de la imagen en la tabla de usuario en la base de datos

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

no ha inicializado la variable $user en el controlador y antes de usarla debe agregar $user = new User; asumiendo que ya has use App\User;

o $user = new \App\User; si no lo haces

Actualice si está tratando de actualizar un registro de usuario existente, debe inicializar la variable $user seleccionando en función de su clave principal que debe enviarse en la solicitud y luego realizar la inicialización como:

 $user_id = $request->input('user_id'); $user = User::find($user_id);
about 4 years ago · Santiago Trujillo Denunciar

0

Use la forma simple a continuación:

 $user = User::where('id', '=', $id)->first(); // where id is method param from url or request object $user->save();

Esto también es más fácil cuando se actualizan varias tablas en las que los identificadores de las subtablas tienen claves externas y deben definirse explícitamente en el proceso de actualización.

También $user = User::find($id); normalmente funciona donde $id es la clave principal de esa tabla de objetos

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda