在我的node.js express server中,我有一个api函数,在其中我要执行async操作for-of循环。
controller.js
const importRecords = async(req,res) => {
for (const bid of distinctArr) {
// doing 3 async operations for each loop iteration with `await`
let transaction = await db.sequelize.transaction();
let b
当我试图获取类别表中的数据时,遇到了一个问题,因为关系错误日志上有一个查询错误:
SELECT `categories`.`id`,
`categories`.`name`,
`categories`.`color`,
`transactions`.`id` AS `transactions.id`,
`transactions`.`name_transaction` AS `transactions.name_transaction`,
`transactions`.`categoriesId` AS `transactions.categoriesId`,
`transactio
我有一个下面的函数,当传递一个新的用户数据时,它可以工作。将对象和子对象成功保存到mysql表中。但是,在我使用sequelize transaction的情况下,一旦保存到数据库中,我该如何返回对象呢?
static async add(user) {
let transaction;
try {
// get transaction
transaction = await models.sequelize.transaction();
// *****how to return the newly created
我可以使用异步函数作为回调函数吗?如下所示:
await sequelize.transaction(async function (t1) {
_.each(data, async function (value) {
await DoWork(value);
});
});
//Only after every "DoWork" is done?
doMoreWork();
据我所知,不能保证调用回调的函数会等到promise被解决后再继续。对吗?确定会发生什么的唯一方法是读取回调传递到的函数的源代码(例如,“transaction”的源
因此,阅读上的后缀文档以及有关的文档,sequelize.transaction()将autoCallback函数作为参数。医生说:
使用事务对象调用回调,并且应该返回一个允诺。如果承诺被解析,则事务提交;如果承诺拒绝,则事务回滚。
然而,我计划在事务上做很多事情,我想避免回调地狱。所以我试着
try {
let result = sequelize.transaction({
isolationLevel: 'SERIALIZABLE'
}, async t => {
// code to
在我的程序中,我想更新许多猫库,它有一个名为Column的父表。此外,一个类别可以包含许多列。(n:m)
因此,我试图更新一个类别的帖子,但它失败了。这是我试过的代码
let updateColumn = async function(req, res) {
let column_id = req.body.id;
let column_title = req.body.title;
let column_content_text = req.body.contentText;
let column_content_html = req.body.contentHTML;
我对sequelize.transaction和model.increment有意见
我有一个简单的模型
class Wallet extends Model {}
Wallet.init(
{
// Model attributes are defined here
id: {
type: DataTypes.INTEGER.UNSIGNED,
autoIncrement: true,
primaryKey: true,
allowNull: false,
},
availableBalance: {