es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

No hay resultados de consulta para el modelo INSIDE JOB.

Quiero realizar una tarea simple para la cola de Laravel. Tengo este error en “failed_jobs”.

Illuminate\Database\Eloquent\ModelNotFoundException: No hay resultados de consulta para el modelo

¿Qué hice mal?

Controlador

public function addUser(Request $req)
{
$user = new User;
$user->name = $req->name;
$user->username = $req->username;
$user->email = $req->email;
$user->password = bcrypt($req->password);
dispatch(new adduser($user));
// adduser::dispatch();

return 'agregado';

}

Trabajo

class adduser implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

public $user;

public function __construct($user)
{
    $this->user = new User;
    $this->user = $user;
}

public function handle()
{
    $this->user->save();
}

}

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Según el mensaje de error, parece que no se puede encontrar el modelo para el Usuario. El problema está en la función addUser en el Controlador.

    En lugar de pasar el objeto $user, lo estás pasando al trabajo adduser a través del constructor y creando un nuevo objeto User, que no tiene los atributos requeridos.

    Para solucionar esto, actualiza la función addUser en el Controlador para pasar $user directamente al trabajo adduser:

    public function addUser(Request $req)
    {
        $user = new User;
        $user->name = $req->name;
        $user->username = $req->username;
        $user->email = $req->email;
        $user->password = bcrypt($req->password);
        dispatch(new adduser($user));
    
        return 'agregado';
    }
    

    Esto asegurará que se pase correctamente el objeto $user al trabajo y se pueda encontrar el modelo.

Comments are closed.