Dado un modelo de usuario:
import { model, Schema } from 'mongoose' export interface User { email: string } const userSchema = new Schema<User>( { email: { type: String, required: true, }, }, ) export const UserModel = model<User>('User', userSchema)Estoy tratando de guardarlo así:
// inside an async function const newUser: HydratedDocument<User> = new UserModel({ email: 'aaa@aaa.com', }) console.log(newUser) await newUser.save() Lo que da como resultado newUser.save is not a function . ¿Qué me estoy perdiendo? Además, aquí está la salida de `console.log(newUser)
Mi estúpido error: estaba llamando todo al frente. La solución es tan fácil como mover las llamadas de db relevantes al punto final.
También deberá definir un modelo, cambie su definición de esquema a esto:
primero crea el modelo desde Schema:
var UserModel = mongoose.model('User', User);luego crea un objeto a partir del modelo de usuario
var user = new UserModel(req.body)luego llame
user.save(function(){});consulte la documentación http://mongoosejs.com/docs/api.html#model_Model-save