Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

744
Visualizações
Error de validación: no se permite el uso de métodos de instancia del administrador de entidades globales para acciones específicas del contexto

Usando TypeORM y obteniendo este error:

 ValidationError: Using global EntityManager instance methods for context specific actions is disallowed. If you need to work with the global instance's identity map, use `allowGlobalContext` configuration option or `fork()` instead

El código al que corresponde está a continuación:

 import { MikroORM } from "@mikro-orm/core"; import { __prod__ } from "./constants"; import { Post } from "./entities/Post"; import mikroConfig from "./mikro-orm.config"; const main = async () => { const orm = await MikroORM.init(mikroConfig); const post = orm.em.create(Post, { title: "my first post", }); await orm.em.persistAndFlush(post); await orm.em.nativeInsert(Post, { title: "my first post 2" }); }; main().catch((error) => { console.error(error); });

No estoy seguro de dónde necesito usar el método .fork()

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Enfrenté un problema similar hoy cuando actualicé la configuración de mikrorm de v4 a v5. Después de hacer un poco de RnD, encontré que los siguientes cambios me ayudaron a resolver el error mencionado.

  1. En el objeto de configuración que se pasa a la llamada MikroORM.init , pase la siguiente propiedad

allowGlobalContext: true

  1. No los use em para create entrada en la base de datos. En su lugar, utilice el siguiente código
 const post = orm.em.fork({}).create(Post, { title: "my first post", });

Los cambios anteriores deberían ayudarlo a corregir el error.

También soy muy nuevo en MikroORM. entonces, no estoy seguro de por qué aparece este error. Pero mi suposición sin educación es que están restringiendo el acceso a cualquier cambio en la instancia global de EntityManager em .

over 4 years ago · Santiago Trujillo Relatório

0

Después de investigar un poco, encontré esta solución:

  1. hilado instalar dotenv

  2. crear un archivo .env en la raíz del proyecto

  3. En su archivo .env, pegue lo siguiente:

MIKRO_ORM_ALLOW_GLOBAL_CONTEXT = true

¡Problema resuelto!

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda