我似乎在文档中找不到有关使用 Classes API 进行事务的任何内容。
有一种Db#begin()
方法可以启动新事务。所以给出下面的代码:
const db = server.use('MyDb');
const transaction = db.begin();
const Product = await transaction.db.class.get('Product');
//Transaction already gets committed to the database here before commit is executed
await Product.create({name: 'Milk', brand: 'Clover'})
transaction.commit()
我原以为事务只会提交,transaction.commit()
但它会立即提交。我知道db.let()
语法,但是像上面这样的东西会更容易使用。
Class#create(record)
如果您不能将它与事务一起使用,我看不到该方法的价值。这让我相信我错过了一些东西,但最后一天我一直在为此绞尽脑汁。