¿Cuál es el asesino de la razón para el uso de la Mangosta ORM?

Yo he estado usando con un nuevo proyecto, pero también es mi primera vez usando MongoDB. La definición de un esquema parece innecesario porque pensé que la boca de mongo fue que no necesita definido esquemas. No puedo guardar los objetos sobre la marcha, sin importar el esquema? Entonces, ¿por qué iba yo a querer? También la documentación que falta, haciendo algunas de las cosas que puedes hacer fácilmente en el mongo shell más difícil que debe ser.

  • Cuando se llama a MongoDB schemaless, lo que realmente se refiere al hecho de que la base de datos no requiere de esquema y no hay esquema de las migraciones, ya sea. Eso no significa que sus datos están siempre no estructurados, en la mayoría de los casos, usted desea que sus datos sean estructurados, y por la naturaleza, por lo general es.
  • Definitivamente, hay casos en los que desea migrar los datos.
  • Hubo cero el valor de la edición de esta pregunta, sólo para agregar saltos de línea, especialmente desde el 1) es de 4 años de edad, y 2) en virtud de hoy StackOverflow directrices, esta pregunta ahora es off-topic como de opinión. Ni siquiera se toman el tiempo para editar el preámbulo acerca de un nuevo proyecto y, a primera hora de usar MongoDB (que es totalmente innecesario).
  • De la OMI, saltos de línea de ayuda, en general, a hacer preguntas y respuestas más legible, si se colocan correctamente. También podría ser de 10 años, si la OMI creo que debe ser editado para que sea más legible, yo lo haré siempre, hasta que me den el permiso para hacerlo, y tengo tiempo para hacerlo. Deberías darme las gracias en lugar de reclamar, pero lo que sea, la gente es tan desagradecida.
InformationsquelleAutor fancy | 2011-04-21

4 Kommentare

  1. 20

    La mejor cosa acerca de la Mangosta para MongoDB es el hecho de que usted puede tener incorporado en la validación automática de los datos que va a insertar/actualizar. Mangosta también le da la capacidad de pre-definir los eventos a suceder, dicen, antes de que un documento se guarda. Esto es muy poderoso porque consolida el código que tendría que escribir, y coloca ese código donde debe estar junto al documento de la lógica y no en la lógica de la aplicación.

    Retirar middleware y validación de algunos ejemplos.
    alexyoung/Nodepad en Github tiene algunos buenos ejemplos en la models.js archivo.

  2. 6

    Conocer un esquema definido de antemano puede ser útil, porque entonces usted puede hacer suposiciones que, de lo contrario no podría ser capaz de.

    Por ejemplo, si tengo un Post esquema, entonces puedo asumir que se tiene un body campo y lo utilizan como un String sin comprobar su existencia.

    Concedida, incluso en mi modelo bien definido, puedo tener el equivalente de un schemaless documento, dentro de ella, por ejemplo

    mongoose.model('Post', new Schema({
        body: String,
        meta: {}
    }));

    y, a continuación, puede muy simplemente agregar datos aleatorios para myPost.meta a su antojo. Se ofrece un muy buen balance para mí entre define el esquema y schemaless.

  3. 3

    Realmente se puede ir de cualquier manera en él. Hay muchos de los más populares mappers de MongoDB en muchos otros idiomas: Morphia para Java, de la Doctrina de PHP, Mongoid /Mongomapper para Ruby, etc.

    Aunque MongoDB es «esquema» no «esquema-gratis». Hay algo que decir acerca de saber qué esperar de salir de la DB.

    Por supuesto, también hay algo tipo de elegante acerca de la creación de un grupo ad-hoc objeto y guardarlo. En este punto, node.js es muy nuevo y es probablemente la mejor manera de trabajar con las cosas que te gusta.

    También la documentación que falta, haciendo algunas de las cosas que puedes hacer fácilmente en el mongo shell más difícil que debe ser.

    Mangosta es todavía un proyecto de la comunidad y que es relativamente nuevo. Si hay docs falta o necesidad de ser escrito, estoy seguro de que el equipo de desarrollo de el amor de la ayuda. Es probable que pueda conectarse con ellos en los grupos.

  4. 0

    He usado la Mangosta y tengo que decir que estoy totalmente de acuerdo en que la definición de su Esquema de antemano limita seriamente MongoDB. La idea detrás de la Mangosta fue a hacer seguro y permite un fácil mantenimiento, pero no realmente atractivo para un documento basado en la base de datos.

    • Revisé la mangosta muy cerca de su lanzamiento, y lo que este post y el op del post señala que – usted nunca realmente leer la documentación muy bien. Mangosta siempre ha tenido el Mixto tipo de esquema para los campos, que permite a cualquier y todos los datos que desea guardar ad-hoc disponible. De hecho, si así lo desea, usted puede hacer que su colección se comportan de una manera, pero no dificultar seriamente su aplicación. Si usted debe comprobar para ver si los datos existe todo el tiempo, usted realmente no tiene ninguna estructura, lo que resulta en errores, problemas e incoherencias en los datos.

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea