From 3356ffd052dcf83109d7985ce3d6ef5b11649ada Mon Sep 17 00:00:00 2001 From: arashsheyda Date: Mon, 5 Jun 2023 21:27:49 +0300 Subject: [PATCH] chore: playground example --- playground/server/api/users/[_id].delete.ts | 8 ++++++++ playground/server/api/users/[_id].get.ts | 8 ++++++++ playground/server/api/users/[_id].put.ts | 9 +++++++++ playground/server/api/users/create.post.ts | 9 +++++++++ playground/server/api/users/index.get.ts | 8 ++++++++ playground/server/models/user.schema.ts | 16 ++++++++++++++++ 6 files changed, 58 insertions(+) create mode 100644 playground/server/api/users/[_id].delete.ts create mode 100644 playground/server/api/users/[_id].get.ts create mode 100644 playground/server/api/users/[_id].put.ts create mode 100644 playground/server/api/users/create.post.ts create mode 100644 playground/server/api/users/index.get.ts create mode 100644 playground/server/models/user.schema.ts diff --git a/playground/server/api/users/[_id].delete.ts b/playground/server/api/users/[_id].delete.ts new file mode 100644 index 0000000..460c484 --- /dev/null +++ b/playground/server/api/users/[_id].delete.ts @@ -0,0 +1,8 @@ +export default defineEventHandler(async (event) => { + try { + return await UserSchema.findOneAndDelete({ _id: event.context.params?._id }) + } + catch (error) { + return error + } +}) diff --git a/playground/server/api/users/[_id].get.ts b/playground/server/api/users/[_id].get.ts new file mode 100644 index 0000000..40999a0 --- /dev/null +++ b/playground/server/api/users/[_id].get.ts @@ -0,0 +1,8 @@ +export default defineEventHandler(async (event) => { + try { + return await UserSchema.findOne({ _id: event.context.params?._id }) + } + catch (error) { + return error + } +}) diff --git a/playground/server/api/users/[_id].put.ts b/playground/server/api/users/[_id].put.ts new file mode 100644 index 0000000..ac618c3 --- /dev/null +++ b/playground/server/api/users/[_id].put.ts @@ -0,0 +1,9 @@ +export default defineEventHandler(async (event) => { + const body = await readBody(event) + try { + return await UserSchema.findOneAndUpdate({ _id: event.context.params?._id }, body, { new: true }) + } + catch (error) { + return error + } +}) diff --git a/playground/server/api/users/create.post.ts b/playground/server/api/users/create.post.ts new file mode 100644 index 0000000..789c7ed --- /dev/null +++ b/playground/server/api/users/create.post.ts @@ -0,0 +1,9 @@ +export default defineEventHandler(async (event) => { + const body = await readBody(event) + try { + return await new UserSchema(body).save() + } + catch (error) { + return error + } +}) diff --git a/playground/server/api/users/index.get.ts b/playground/server/api/users/index.get.ts new file mode 100644 index 0000000..2f99a21 --- /dev/null +++ b/playground/server/api/users/index.get.ts @@ -0,0 +1,8 @@ +export default defineEventHandler(async () => { + try { + return await UserSchema.find({}) + } + catch (error) { + return error + } +}) diff --git a/playground/server/models/user.schema.ts b/playground/server/models/user.schema.ts new file mode 100644 index 0000000..6144700 --- /dev/null +++ b/playground/server/models/user.schema.ts @@ -0,0 +1,16 @@ +import { defineMongooseModel } from '#nuxt/mongoose' + +export const UserSchema = defineMongooseModel({ + name: 'User', + schema: { + name: { + type: 'string', + required: true, + }, + slug: { + type: 'string', + required: true, + unique: true, + }, + }, +})