如何删除动态表?
例如,是否有一个Model.deleteTable()函数?
发布于 2018-02-07 22:34:24
我建议创建一个小模块,在其中为您的动态导入添加额外的配置。
const dynamo = require('dynamoose')
const constants = require('../constants')
let oldModelFunction = dynamo.model
dynamo.model = function () {
let compiledModel = oldModelFunction.apply(this, arguments)
let name = compiledModel.$__.name
compiledModel.modelName = name.toLowerCase()
// Add deleteTable method
compiledModel.deleteTable = () => {
return new Promise((resolve, reject) => {
dynamo.ddb().deleteTable({ TableName: compiledModel.$__.name }, (err, resp) => {
if (err) reject(err)
else resolve(resp)
})
})
}
return compiledModel
}
module.exports = dynamo然后,您可以创建一个模型并按如下方式使用它:
const dynamo = require('./mydynamoose')
const Schema = dynamo.Schema
let UserSchema = new Schema({
username: String,
name: String,
age: Number
})
const User = dynamo.model("User", UserSchema)
User.deleteTable().then(res => {
// Check response
}).catch(err => {
console.log(err)
})https://stackoverflow.com/questions/48674431
复制相似问题