const { onValueUpdated } = require("firebase-functions/v2/database");
const admin = require("firebase-admin");
if (!admin.apps.length) {
admin.initializeApp({
databaseURL: "https://restaurant-3e115-default-rtdb.e ... abase.app/"
});
}
const db = admin.database();
exports.monitorIngredientQuantity = onValueUpdated({
region: "europe-west1",
ref: "kitchen/{kitchenId}/ingredients/list/{ingrNumber}/quantity",
database: "default"
}, async (event) => {
const { kitchenId, ingrNumber } = event.params;
console.log(`
const ingredientDataSnap = await event.data.after.ref.parent.get();
const ingredientData = ingredientDataSnap.val();
if (!ingredientData) {
console.error(`
return;
}
const { quarepl, replacement, price } = ingredientData;
const updatedQuantity = event.data.after.val();
console.log(`
if (updatedQuantity >= quarepl) {
console.log("
return;
}
const ordersRef = db.ref(`kitchen/${kitchenId}/ingredients/orders`);
const newOrderRef = ordersRef.push();
const newOrder = {
ingredient: ingrNumber,
quantity: replacement,
status: "requested",
price: price * replacement
};
await newOrderRef.set(newOrder);
console.log(`
});
< /code>
И когда в эмуляторе Firebase сработал код, но когда я развернул его в консоли и пытаюсь использовать его, я обнаружил следующую ошибку в журнале:
Fater Fatal Error: база данных инициализируется несколько раз. Пожалуйста, убедитесь, что формат URL -адреса базы данных совпадает с каждым вызовом базы данных ().
Подробнее здесь: https://stackoverflow.com/questions/795 ... e-sure-the