Я прочитал документацию на Vapor Fluent, но ничего не нашел о выполнении транзакций с базой данных.Выполнение транзакций с базой данных в Vapor Fluent (Mongo)
https://vapor.github.io/documentation/fluent/driver.html
Например, я хочу, чтобы выполнить эту часть кода в одной транзакции:
var order = Order(customerId: customer.id!,
createdDate: Int(Date().timeIntervalSince1970),
availabilityDate: orderDate)
do {
try order.save()
} catch {
throw Abort.serverError
}
for jsonItem in items {
guard let object = jsonItem.object else {
continue
}
let menuItemId = object["item_id"]!.string!
let quantity = object["quantity"]!.int!
guard let menuItem = try MenuItem.find(menuItemId) else {
continue
}
var orderItem = OrderItem(orderId: order.id!,
menuItemId: menuItem.id!,
quantity: quantity)
do {
try orderItem.save()
} catch {
throw Abort.serverError
}
}
Можно ли я использовать поставщик VaporMongo? Благодаря!