Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

1K
Views
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 answers
Answer question

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 Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!