Last active
November 6, 2024 22:42
-
-
Save emilianobilli/6c82d6399aa8fe8101309204aabadb72 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# main.py | |
from database import Database | |
import json | |
def mostrar_menu(): | |
print("\n--- Base de Datos Documental ---") | |
print("1. Crear colección") | |
print("2. Importar CSV a colección") | |
print("3. Consultar documento en colección") | |
print("4. Eliminar documento de colección") | |
print("5. Listar todos los documentos en colección") | |
print("6. Salir") | |
return input("Seleccione una opción: ") | |
def main(): | |
db = Database("MiBaseDeDatos") | |
while True: | |
opcion = mostrar_menu() | |
if opcion == "1": | |
nombre_coleccion = input("Ingrese el nombre de la colección: ") | |
db.create_collection(nombre_coleccion) | |
print(f"Colección '{nombre_coleccion}' creada.") | |
elif opcion == "2": | |
nombre_coleccion = input("Ingrese el nombre de la colección: ") | |
collection = db.get_collection(nombre_coleccion) | |
ruta_csv = input("Ingrese la ruta del archivo CSV: ") | |
collection.import_csv(nombre_coleccion, ruta_csv) | |
elif opcion == "3": | |
nombre_coleccion = input("Ingrese el nombre de la colección: ") | |
doc_id = input("Ingrese el ID del documento: ") | |
coleccion = db.get_collection(nombre_coleccion) | |
if coleccion: | |
documento = coleccion.get_document(doc_id) | |
if documento: | |
print("Documento encontrado:") | |
print(documento) | |
else: | |
print("Documento no encontrado.") | |
else: | |
print(f"Colección '{nombre_coleccion}' no encontrada.") | |
elif opcion == "4": | |
nombre_coleccion = input("Ingrese el nombre de la colección: ") | |
doc_id = input("Ingrese el ID del documento a eliminar: ") | |
coleccion = db.get_collection(nombre_coleccion) | |
if coleccion: | |
coleccion.delete_document(doc_id) | |
elif opcion == "5": | |
nombre_coleccion = input("Ingrese el nombre de la colección: ") | |
coleccion = db.get_collection(nombre_coleccion) | |
if coleccion: | |
documentos = coleccion.list_documents() | |
if documentos: | |
print("\n--- Lista de Documentos ---") | |
for doc in documentos: | |
print(doc) | |
print("-----------") | |
else: | |
print("No hay documentos en la colección.") | |
elif opcion == "6": | |
print("Saliendo del programa.") | |
break | |
else: | |
print("Opción no válida. Intente nuevamente.") | |
if __name__ == "__main__": | |
main() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment