Fibrasek
01/05/2022, 7:55 PMsilentworks
01/05/2022, 8:01 PMservice_role
on the server.Fibrasek
01/05/2022, 8:02 PMFibrasek
01/05/2022, 8:05 PM# lib/db.js
import { createClient } from '@supabase/supabase-js'
const supabase = createClient(
import.meta.env.VITE_SUPABASE_URL,
import.meta.env.VITE_SUPABASE_ANON_KEY,
)
...
export const insertRecipe = async (recipe) => {
console.log(recipe);
const { data, error } = await supabase
.from('recipes')
.insert([{
name: recipe.name,
description: recipe.description,
user_id: recipe.user_id
}], { returning: "minimal" });
if (error) {
console.log(error);
return false;
} else {
return data;
}
};
...
export default supabase
# routes/api/recipes/create.js
import {
insertRecipe,
insertIngrdient,
insertStep
} from "$lib/db";
export const post = async ({
body
}) => {
const formData = JSON.parse(body);
const data = await insertRecipe({
name: formData.name,
description: formData.description,
user_id: formData.user_id
});
if (data) {
const recipe = data[0];
formData.ingredients.forEach(async (ing) => {
await insertIngrdient({
...ing,
recipeId: recipe.id
});
});
formData.steps.forEach(async (step) => {
await insertStep({
...step,
recipeId: recipe.id
});
});
return {
body: {
result: 'ok',
}
};
} else {
return {
body: {
result: 'error',
}
};
}
};
Fibrasek
01/05/2022, 8:05 PMFibrasek
01/05/2022, 8:06 PMFibrasek
01/05/2022, 8:07 PMsilentworks
01/05/2022, 8:12 PMFibrasek
01/05/2022, 8:12 PMsilentworks
01/05/2022, 8:13 PMsilentworks
01/05/2022, 8:13 PMFibrasek
01/05/2022, 8:14 PMFibrasek
01/05/2022, 8:14 PMsilentworks
01/05/2022, 8:19 PM