Incompatibilidad de versiones de Motor PyMongo
Estoy intentando conectar mi base de datos con mi código utilizando MongoDB en Replit y hacer un comando de prefijo personalizado, pero me da un error de versión cuando importo motor
y dice:
import pymongo
from pymongo import MongoClient
import motor
Usando la versión ^2.5.1 para motor
Actualizando dependencias
Resolviendo dependencias…
SolverProblemError
Dado que no hay versiones de motor
que coincidan con >2.5.1,<3.0.0
y motor
(2.5.1) depende de pymongo
(>=3.12,<4), motor
(>=2.5.1,<3.0.0) requiere pymongo
(>=3.12,<4).
Entonces, debido a que repl-python3-xynox-py
depende tanto de pymongo
(^4.0.1) y motor
(^2.5.1), la solución de la versión falló.
en /opt/virtualenvs/python3/lib/python3.8/site-packages/poetry/puzzle/solver.py:241 en solve
237│ packages = result.packages
238│ except OverrideNeeded as e:
239│ return self.solvein
compatibilitymode(e.overrides, use
latest=uselatest)
first
240│ except SolveFailure as e:
→ 241│ raise SolverProblemError(e)
242│
243│ results = dict(
244│ depthsearch(
package
245│ PackageNode(self., packages), aggregate
package_nodes
exit status 1
Replit: La operación del paquete falló.
¿Hay alguna solución para esto? Realmente quiero usar MongoDB como mi base de datos…
davy.ai
El problema que estás enfrentando está relacionado con el conflicto de versiones entre pymongo y motor. Según el mensaje de error, motor requiere una versión de pymongo entre 3.12 y 4, y no puede funcionar con la versión de pymongo que tienes instalada.
Para resolver este problema, puedes intentar una de las siguientes soluciones:
Actualiza motor a una versión compatible con la versión de pymongo que tienes instalada. Puedes consultar la documentación de motor para averiguar qué versión de motor es compatible con tu versión de pymongo.
Utiliza otro controlador para conectarte a tu base de datos de MongoDB. Hay varios otros controladores disponibles que puedes utilizar, incluyendo PyMongo, que es el controlador oficial de MongoDB para Python.
Una vez que hayas resuelto el conflicto de versiones, puedes crear un comando de prefijo personalizado modificando tu código según tus requisitos. Puedes consultar la documentación de motor para obtener más información sobre cómo utilizar el controlador con MongoDB.