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

1K
Vistas
Pymongo: Cómo insertar un documento con una marca de tiempo

Me gustaría insertar en una base de datos un documento con una marca de tiempo y no una fecha. Si inserto el siguiente documento:

 data = {'dt': dt.datetime.today().timestamp()}

La marca de tiempo se insertará como un doble: Doble ejemplo

Lo que me gustaría es tener este tipo de datos:

ejemplo de marca de tiempo mongo

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

0

Solo para agregar algo adicional, el campo _id predeterminado que se crea automáticamente contiene una "marca de tiempo", y puede recuperarlo usando la propiedad generation_time del objeto ObjectId, sin tener que agregar su propio campo, por ejemplo:

 from pymongo import MongoClient db = MongoClient()['mydatabase'] db.mycollection.insert_one({'a': 1}) record = db.mycollection.find_one({'a': 1}) print(record.get('_id').generation_time)

huellas dactilares:

 2021-03-14 17:08:51+00:00
over 4 years ago · Santiago Trujillo Denunciar

0

Si bien Mongo tiene una marca de tiempo, los documentos dicen lo siguiente:

El tipo de marca de tiempo BSON es para uso interno de MongoDB. En la mayoría de los casos, en el desarrollo de aplicaciones, querrá utilizar el tipo de fecha BSON. Consulte Fecha para obtener más información.

Tenga en cuenta que el uso del tipo de marca de tiempo también puede tener problemas con diferentes soportes de controladores y problemas relacionados con el comportamiento del operador. pymongo usa objetos datetime.datetime para representar fechas y horas en documentos MongoDB. Y como ya está usando datetime , sugeriría simplemente guardarlo como una Date , no como una marca de tiempo.

Si por alguna razón insiste en usar el tipo de timestamp de tiempo, deberá usar el tipo bson.timestamp de la siguiente manera:

 from bson.timestamp import Timestamp import datetime as dt timestamp = Timestamp(int(dt.datetime.today().timestamp()), 1)
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