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

156
Vistas
Rails - mongoid - ¿crear y anular usando la tecla?

Me gustaría saber si hay posibilidades más simples (y más rápidas) para crear/anular un elemento en mi base de datos mongo mirando una clave.

Dejame explicar :

 MyObject: #<MyObject _id: 5881e885049490276d1d85b9, data_table: [...], my_key: "test">

así que este es mi objeto

Hoy, necesito modificar muchos de estos objetos de una manera muy rápida (muy a menudo) actualizando el data_table

Hoy hago esto:

 ct = MyObject.where(my_key: "test").first ct.update_attributes(data_table: data)

Pero creo que pierdo muchas actuaciones, ¿no?

¿Hay alguna manera de create or update usando la clave my_key para crear o anular el elemento?

¿O alguna otra idea para mejorar el rendimiento?

Gracias !

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

0

Prueba esto:

 MyObject.find_or_create_by(my_key: "test").update_attributes(data_table: data)

En este caso, no hay optimizaciones de rendimiento del lado de mongo, volverá a consultar db, si no se encuentra, creará un nuevo registro y lo actualizará, solo en una línea.

Otra optimización sería reemplazar update_attributes con set si no necesita ejecutar validaciones en su modelo.

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