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

1.5K
Vistas
Error general: 1364 El campo 'user_id' no tiene un valor predeterminado

Estoy tratando de asignar el ID de usuario con el usuario actual pero me da este error

 SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value (SQL: insert into `posts` (`updated_at`, `created_at`) values (2017-04-27 10:29:59, 2017-04-27 10:29:59))

aquí está mi método

 //PostController Post::create(request([ 'body' => request('body'), 'title' => request('title'), 'user_id' => auth()->id() ]));

con estos rellenos

 //Post Model protected $fillable = ['title', 'body', 'user_id']

Sin embargo, este método hace el trabajo

 //PostController auth()->user()->publish(new Post(request(['title' ,'body']))); //Post Model public function publish(Post $post) { $this->posts()->save($post); }

¿alguna idea de por qué esto falla? ingrese la descripción de la imagen aquí

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

necesita cambiar el modo estricto de la base de datos. para deshabilitar siga el paso a continuación

  1. Abra config/database.php de datos.php

  2. encuentre 'strict' cambie el valor de verdadero a falso e intente nuevamente

over 4 years ago · Santiago Trujillo Denunciar

0

Entonces, después de revisar el código nuevamente, encontré el error. ¡Me pregunto cómo nadie se da cuenta de eso! En el código anterior escribí

 Post::create(request([ // <= the error is Here!!! 'body' => request('body'), 'title' => request('title'), 'user_id' => auth()->id() ]));

en realidad, no es necesario que la función de solicitud deforme el cuerpo de la función de creación.

 // this is right Post::create([ 'body' => request('body'), 'title' => request('title'), 'user_id' => auth()->id() ]);
over 4 years ago · Santiago Trujillo Denunciar

0

Tuve un problema similar con el registro de usuario hoy y estaba recibiendo un

 SQLSTATE[HY000]: General error: 1364 Field 'password' doesn't have a default value (SQL: insert into users

Lo arreglé agregando una password a mi matriz $ rellenable protegida y funcionó

 protected $fillable = [ 'name', 'email', 'password', ];

Espero que esto ayude.

over 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