Ir al contenido principal

Introducción

Descripción​

Dynamoose es una herramienta modelo para Amazon's DynamoDB. Dynamoose está fuertemente inspirado en Mongoose, lo que significa que si vienes de Mongoose la sintaxis será bastante familiar.

Características clave​

  • Seguridad de tipos
  • Alto nivel API
  • Sintaxis fácil de usar
  • Soporte para diseño de tabla única DynamoDB
  • Capacidad para transformar datos antes de guardar o recuperar elementos
  • Modelado estricto de datos (validación, atributos requeridos y más)
  • Support for DynamoDB Transactions
  • Poderoso soporte Condicional/Filtrado
  • Llamada & Soporte de promesa
  • Soporte multiregional de AWS
  • DynamoDB Streams support
Introducción a Dynamoose por rrainn Learn

Example​

import * as dynamoose from "dynamoose";
import * as crypto from "crypto";

// Create a new Dynamoose model
const Book = dynamoose.model("Book", {
"id": {
"type": String,
"hashKey": true,
"default": () => crypto.randomUUID()
},
"title": {
"type": String,
"required": true
},
"author": {
"type": String,
"required": true
},
"publishedDate": {
"type": Date,
"required": true
},
"genre": {
"type": String,
"required": true,
"enum": [
"fantasy",
"sci-fi",
"mystery",
"thriller",
"romance",
"non-fiction",
"horror",
"biography",
"autobiography",
"poetry",
"children's",
"young-adult",
"other"
]
},
"summary": String,
"pageCount": Number
});

// Add a new item to the Book table
const newBook = new Book({
"title": "Harry Potter and the Philosopher's Stone",
"author": "J.K. Rowling",
"publishedDate": new Date("1997-06-26"),
"genre": "fantasy",
"summary": "The story of a young wizard who discovers he is a wizard and attends a magical school.",
"pageCount": 223
});
await newBook.save();

// Retrieve all items from the Book table
const allBooks = await Book.scan().exec();
console.log(allBooks);