usando tutorial restful node español cómo crear node.js mongodb postgresql mongoose database

node.js - tutorial - npm



Mangosta: Esquema vs Modelo? (1)

En mangosta, un esquema representa la estructura de un documento particular, ya sea completamente o solo una parte del documento. Es una forma de expresar propiedades y valores esperados, así como restricciones e índices. Un modelo define una interfaz de programación para interactuar con la base de datos (leer, insertar, actualizar, etc.). Entonces, un esquema responde "¿cómo se verán los datos en esta colección?" y un modelo proporciona funcionalidades como "¿Hay algún registro que coincida con esta consulta?" o "Agregar un nuevo documento a la colección".

En RDBMS directo, el esquema se implementa mediante sentencias DDL (create table, alter table, etc.), mientras que no hay un concepto directo de un modelo, solo declaraciones SQL que pueden hacer consultas altamente flexibles (select statements), así como inserciones básicas, actualizaciones , borrar operaciones

Otra forma de pensarlo es que la naturaleza de SQL le permite definir un "modelo" para cada consulta seleccionando solo campos particulares y uniendo registros de tablas relacionadas entre sí.

En otros sistemas ORM como Ruby on Rails, el esquema se define a través de mecanismos ActiveRecord y el modelo es el método adicional que agrega su subclase modelo que define la lógica comercial adicional.

Cuando se observan los tutoriales, a menudo hay una delineación entre un esquema y un modelo, particularmente cuando se trata de mangosta / mongodb. Esto hace que trasladarse a postgresql sea algo confuso, ya que los "modelos" no parecen existir bajo ese sistema. ¿Cuál es la diferencia de los dos enfoques?

Por ejemplo, ¿cuál sería el equivalente de ORM postgres / sql de esta línea?

(mangosta y express.js):

var userSchema = schema.define(''local'', { username: String, password: String, }); module.exports = mongoose.model(''User'', userSchema);