Files
nuxt-mongoose/api/_content/query/722KuRUIpz.1705527043754.json

1 line
22 KiB
JSON

{"_path":"/docs/api/utils","_dir":"api","_draft":false,"_partial":false,"_locale":"","title":"Utils","description":"Discover all available utils.","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"utils"},"children":[{"type":"text","value":"Utils"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Discover all available utils."}]},{"type":"element","tag":"h2","props":{"id":"definemongoosemodel"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"defineMongooseModel"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function creates a new Mongoose model with schema. Example usage:"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"pre","props":{"code":"export const User = defineMongooseModel({\n name: 'User',\n schema: {\n email: {\n type: 'string',\n required: true,\n unique: true,\n },\n },\n options: {\n \n },\n hooks(schema) {\n\n },\n})\n","filename":"named parameters","language":"ts","meta":"","className":"language-ts shiki shiki-themes github-dark github-light","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#79B8FF;--shiki-default:#005CC5"},"children":[{"type":"text","value":" User"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#B392F0;--shiki-default:#6F42C1"},"children":[{"type":"text","value":" defineMongooseModel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":"({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" name: "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#9ECBFF;--shiki-default:#032F62"},"children":[{"type":"text","value":"'User'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" schema: {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" email: {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" type: "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#9ECBFF;--shiki-default:#032F62"},"children":[{"type":"text","value":"'string'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" required: "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#79B8FF;--shiki-default:#005CC5"},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" unique: "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#79B8FF;--shiki-default:#005CC5"},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" options: {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#B392F0;--shiki-default:#6F42C1"},"children":[{"type":"text","value":" hooks"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#FFAB70;--shiki-default:#E36209"},"children":[{"type":"text","value":"schema"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":") {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":"})\n"}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"import { defineMongooseModel } from '#nuxt/mongoose'\n\nexport const User = defineMongooseModel('User', {\n email: {\n type: 'string',\n required: true,\n unique: true,\n },\n}, {\n \n}, (schema) => {\n\n})\n","filename":"positional parameters","language":"ts","meta":"","className":"language-ts shiki shiki-themes github-dark github-light","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" { defineMongooseModel } "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#9ECBFF;--shiki-default:#032F62"},"children":[{"type":"text","value":" '#nuxt/mongoose'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#79B8FF;--shiki-default:#005CC5"},"children":[{"type":"text","value":" User"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#B392F0;--shiki-default:#6F42C1"},"children":[{"type":"text","value":" defineMongooseModel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#9ECBFF;--shiki-default:#032F62"},"children":[{"type":"text","value":"'User'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":", {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" email: {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" type: "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#9ECBFF;--shiki-default:#032F62"},"children":[{"type":"text","value":"'string'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" required: "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#79B8FF;--shiki-default:#005CC5"},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" unique: "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#79B8FF;--shiki-default:#005CC5"},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":"}, {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":"}, ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#FFAB70;--shiki-default:#E36209"},"children":[{"type":"text","value":"schema"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":"})\n"}]}]}]}]}]},{"type":"text","value":"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Require"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"name"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"string"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Name of Model"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"schema"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://mongoosejs.com/docs/schematypes.html","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SchemaDefinition"}]}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Schema Definition of Model"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"options"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://mongoosejs.com/docs/guide.html#options","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SchemaOptions"}]}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"false"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Schema Options for Model"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"hooks"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://mongoosejs.com/docs/middleware.html","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"(schema: Schema<T>) => void"}]}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"false"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Schema Hooks Function to customize Model"}]}]}]}]},{"type":"element","tag":"alert","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"you can access the default connection with importing it from mongoose:"}]}]},{"type":"element","tag":"pre","props":{"code":"import { connection } from 'mongoose'\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"import { connection } from 'mongoose'\n"}]}]},{"type":"element","tag":"h2","props":{"id":"definemongooseconnection"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"defineMongooseConnection"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function creates a new Mongoose connection."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt-mongoose"}]},{"type":"text","value":" provides a default connection for you, it auto-register a plugin in nitro, so you don't need to use this function unless you want to create a new connection. more info "},{"type":"element","tag":"a","props":{"href":"https://github.com/arashsheyda/nuxt-mongoose/blob/main/src/runtime/server/plugins/mongoose.db.ts","rel":["nofollow"]},"children":[{"type":"text","value":"here"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Example usage:"}]},{"type":"element","tag":"pre","props":{"code":"import { defineMongooseConnection } from '#nuxt/mongoose'\n\nexport const connection = defineMongooseConnection('mongodb://127.0.0.1/nuxt-mongoose')\n","language":"ts","meta":"","className":"language-ts shiki shiki-themes github-dark github-light","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":" { defineMongooseConnection } "}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#9ECBFF;--shiki-default:#032F62"},"children":[{"type":"text","value":" '#nuxt/mongoose'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#79B8FF;--shiki-default:#005CC5"},"children":[{"type":"text","value":" connection"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#F97583;--shiki-default:#D73A49"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#B392F0;--shiki-default:#6F42C1"},"children":[{"type":"text","value":" defineMongooseConnection"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#9ECBFF;--shiki-default:#032F62"},"children":[{"type":"text","value":"'mongodb://127.0.0.1/nuxt-mongoose'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-dark:#E1E4E8;--shiki-default:#24292E"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"definemongoosemodel","depth":2,"text":"defineMongooseModel"},{"id":"definemongooseconnection","depth":2,"text":"defineMongooseConnection"}]}},"_type":"markdown","_id":"content:1.docs:2.api:1.utils.md","_source":"content","_file":"1.docs/2.api/1.utils.md","_extension":"md"}