python - framework - Django admin y MongoDB, ¿es posible?
flask mongodb (7)
Django Admin es MUY posible con MongoDB. ¿Has mirado en el proyecto Djongo ?
Djongo es un compilador de consultas de SQL a MongoDB. Convierte cada cadena de consulta SQL en un documento de consulta mongoDB. Como resultado,
- Todos los modelos Django y los módulos relacionados funcionan como están.
- Utilice la GUI de administración de Django para agregar documentos incrustados de MongoDB.
- Djongo proporciona extensiones de API al ORM de Django que le permiten "incrustar" un documento dentro de otro, como MongoEngine.
Hay un artículo sobre el uso de Django con MongoDB agregando solo una línea de código, si está buscando más información. De lo contrario, puede saltar directamente a la documentación de djongo y comenzar a usarla.
Estoy construyendo un servicio de URL corto y simple, hasta el momento, para uso de nuestra empresa. Y me gustaría usar mongodb para almacenar los datos, pero necesitaré algún tipo de interfaz simple para agregar / editar url corto para mapeos de url largo.
Los documentos de Mongo serán muy simples, algo como esto:
{
shortUrlSlug: ''pbbs'',
fullUrl: ''http://example.com/peanut/butter/and/bacon/sandwiches/''
}
¿Hay algo por ahí que exponga una interfaz de administración "CRUD" simple a mongodb, que se pueda integrar con django, donde se pueda especificar el modelo?
Básicamente como django admin, pero sin requerir una base de datos SQL.
¡Gracias!
Esta es una pregunta antigua, pero si alguien se enfrenta al mismo problema hoy, creo que su mejor apuesta sería http://humongous.io . Es una interfaz tipo django-admin para mongoDB. Sabe cómo adivinar / lidiar con las relaciones y funciona prácticamente como el administrador de Django.
He confirmado que el proyecto django-nonrel es compatible con la interfaz de administración. Tuve un problema en el que el SITE_ID predeterminado fue seleccionado como un número, lo que no está permitido como clave principal en MongoDB. Resolví esto estableciendo:
SITE_ID = ''4d421623b0207acdc500001d''
en mi settings.py
Obtuve el número imprimiendo la identificación del primer valor del sitio en la colección a través del shell.
No he probado esto extensivamente, pero registre un administrador para un objeto de Encuesta y lo veo funcionar.
He usado django-nonrel con mongodb-engine y funciona bien. El administrador de Django también trabaja con campos de modelo estándar. Pero si estás usando listfield y dictfield, necesitarías hackear un poco.
No estoy seguro, pero django-nonrel y el backend de mongodb pueden ser compatibles con el administrador de django hoy en día ... podría valer la pena verlo
mongodb tiene muchos comportamientos y django-admin es para la base de datos de relaciones como postgresql
puede crear django admin con django-nonrel
pero no está optimizado y es bueno. Creo que es mejor crear un administrador personalizado para tu aplicación.
django-nonrel es una bifurcación de django y no se ha actualizado durante más de un año. django-mongonaut y django-mongoadmin son paquetes de django y probablemente se ajusten mejor.