[{"data":1,"prerenderedAt":1470},["ShallowReactive",2],{"docs-/docs/framework/validators":3,"docs-surround-/docs/framework/validators":1400,"sidebar-docs":1411},{"id":4,"title":5,"body":6,"category":1388,"description":1389,"extension":1390,"links":1391,"meta":1392,"navigation":1393,"order":1391,"path":1396,"seo":1397,"stem":1398,"__hash__":1399},"docs/docs/framework/validators.md","模式验证器",{"type":7,"value":8,"toc":1374},"minimark",[9,22,27,31,85,96,523,533,554,558,565,569,599,943,947,950,954,989,1311,1314,1335,1338,1341,1352,1356,1363,1370],[10,11,12,13,17,18,21],"p",{},"Nuxt Content 支持使用多种验证器定义集合模式。默认情况下，这包括流行的库如 ",[14,15,16],"strong",{},"Zod v3 / v4"," 和 ",[14,19,20],{},"Valibot","（示例如下）。该系统是可扩展的，可以通过 JSON Schema 适配器支持其他验证器。模式确保数据一致性，并驱动生成的类型和 Studio 表单。",[23,24,26],"h2",{"id":25},"使用-zod-v3","使用 Zod v3",[28,29,30],"h3",{"id":30},"安装",[32,33,38],"pre",{"className":34,"code":35,"language":36,"meta":37,"style":37},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","pnpm add -D zod zod-to-json-schema\n# 或\nnpm i -D zod zod-to-json-schema\n","bash","",[39,40,41,63,70],"code",{"__ignoreMap":37},[42,43,46,50,54,57,60],"span",{"class":44,"line":45},"line",1,[42,47,49],{"class":48},"sBMFI","pnpm",[42,51,53],{"class":52},"sfazB"," add",[42,55,56],{"class":52}," -D",[42,58,59],{"class":52}," zod",[42,61,62],{"class":52}," zod-to-json-schema\n",[42,64,66],{"class":44,"line":65},2,[42,67,69],{"class":68},"sHwdD","# 或\n",[42,71,73,76,79,81,83],{"class":44,"line":72},3,[42,74,75],{"class":48},"npm",[42,77,78],{"class":52}," i",[42,80,56],{"class":52},[42,82,59],{"class":52},[42,84,62],{"class":52},[10,86,87,88,91,92,95],{},"建议直接从 ",[39,89,90],{},"zod"," 导入 ",[39,93,94],{},"z","。",[32,97,102],{"className":98,"code":99,"filename":100,"language":101,"meta":37,"style":37},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { defineContentConfig, defineCollection, property } from '@nuxt/content'\nimport { z } from 'zod' // 或 'zod/v3'（如果您的设置暴露了此子路径）\n\nexport default defineContentConfig({\n  collections: {\n    blog: defineCollection({\n      type: 'page',\n      source: 'blog/*.md',\n      schema: z.object({\n        title: z.string(),\n        description: z.string().optional(),\n        date: z.date(),\n        draft: z.boolean().default(false),\n        tags: z.array(z.string()).optional(),\n        image: z.object({\n          src: property(z.string()).editor({ input: 'media' }),\n          alt: z.string()\n        })\n      })\n    })\n  }\n})\n","content.config.ts","ts",[39,103,104,144,167,173,191,204,218,236,253,273,293,318,337,370,403,421,467,484,493,501,509,515],{"__ignoreMap":37},[42,105,106,110,114,118,121,124,126,129,132,135,138,141],{"class":44,"line":45},[42,107,109],{"class":108},"s7zQu","import",[42,111,113],{"class":112},"sMK4o"," {",[42,115,117],{"class":116},"sTEyZ"," defineContentConfig",[42,119,120],{"class":112},",",[42,122,123],{"class":116}," defineCollection",[42,125,120],{"class":112},[42,127,128],{"class":116}," property",[42,130,131],{"class":112}," }",[42,133,134],{"class":108}," from",[42,136,137],{"class":112}," '",[42,139,140],{"class":52},"@nuxt/content",[42,142,143],{"class":112},"'\n",[42,145,146,148,150,153,155,157,159,161,164],{"class":44,"line":65},[42,147,109],{"class":108},[42,149,113],{"class":112},[42,151,152],{"class":116}," z",[42,154,131],{"class":112},[42,156,134],{"class":108},[42,158,137],{"class":112},[42,160,90],{"class":52},[42,162,163],{"class":112},"'",[42,165,166],{"class":68}," // 或 'zod/v3'（如果您的设置暴露了此子路径）\n",[42,168,169],{"class":44,"line":72},[42,170,172],{"emptyLinePlaceholder":171},true,"\n",[42,174,176,179,182,185,188],{"class":44,"line":175},4,[42,177,178],{"class":108},"export",[42,180,181],{"class":108}," default",[42,183,117],{"class":184},"s2Zo4",[42,186,187],{"class":116},"(",[42,189,190],{"class":112},"{\n",[42,192,194,198,201],{"class":44,"line":193},5,[42,195,197],{"class":196},"swJcz","  collections",[42,199,200],{"class":112},":",[42,202,203],{"class":112}," {\n",[42,205,207,210,212,214,216],{"class":44,"line":206},6,[42,208,209],{"class":196},"    blog",[42,211,200],{"class":112},[42,213,123],{"class":184},[42,215,187],{"class":116},[42,217,190],{"class":112},[42,219,221,224,226,228,231,233],{"class":44,"line":220},7,[42,222,223],{"class":196},"      type",[42,225,200],{"class":112},[42,227,137],{"class":112},[42,229,230],{"class":52},"page",[42,232,163],{"class":112},[42,234,235],{"class":112},",\n",[42,237,239,242,244,246,249,251],{"class":44,"line":238},8,[42,240,241],{"class":196},"      source",[42,243,200],{"class":112},[42,245,137],{"class":112},[42,247,248],{"class":52},"blog/*.md",[42,250,163],{"class":112},[42,252,235],{"class":112},[42,254,256,259,261,263,266,269,271],{"class":44,"line":255},9,[42,257,258],{"class":196},"      schema",[42,260,200],{"class":112},[42,262,152],{"class":116},[42,264,265],{"class":112},".",[42,267,268],{"class":184},"object",[42,270,187],{"class":116},[42,272,190],{"class":112},[42,274,276,279,281,283,285,288,291],{"class":44,"line":275},10,[42,277,278],{"class":196},"        title",[42,280,200],{"class":112},[42,282,152],{"class":116},[42,284,265],{"class":112},[42,286,287],{"class":184},"string",[42,289,290],{"class":116},"()",[42,292,235],{"class":112},[42,294,296,299,301,303,305,307,309,311,314,316],{"class":44,"line":295},11,[42,297,298],{"class":196},"        description",[42,300,200],{"class":112},[42,302,152],{"class":116},[42,304,265],{"class":112},[42,306,287],{"class":184},[42,308,290],{"class":116},[42,310,265],{"class":112},[42,312,313],{"class":184},"optional",[42,315,290],{"class":116},[42,317,235],{"class":112},[42,319,321,324,326,328,330,333,335],{"class":44,"line":320},12,[42,322,323],{"class":196},"        date",[42,325,200],{"class":112},[42,327,152],{"class":116},[42,329,265],{"class":112},[42,331,332],{"class":184},"date",[42,334,290],{"class":116},[42,336,235],{"class":112},[42,338,340,343,345,347,349,352,354,356,359,361,365,368],{"class":44,"line":339},13,[42,341,342],{"class":196},"        draft",[42,344,200],{"class":112},[42,346,152],{"class":116},[42,348,265],{"class":112},[42,350,351],{"class":184},"boolean",[42,353,290],{"class":116},[42,355,265],{"class":112},[42,357,358],{"class":184},"default",[42,360,187],{"class":116},[42,362,364],{"class":363},"sfNiH","false",[42,366,367],{"class":116},")",[42,369,235],{"class":112},[42,371,373,376,378,380,382,385,388,390,392,395,397,399,401],{"class":44,"line":372},14,[42,374,375],{"class":196},"        tags",[42,377,200],{"class":112},[42,379,152],{"class":116},[42,381,265],{"class":112},[42,383,384],{"class":184},"array",[42,386,387],{"class":116},"(z",[42,389,265],{"class":112},[42,391,287],{"class":184},[42,393,394],{"class":116},"())",[42,396,265],{"class":112},[42,398,313],{"class":184},[42,400,290],{"class":116},[42,402,235],{"class":112},[42,404,406,409,411,413,415,417,419],{"class":44,"line":405},15,[42,407,408],{"class":196},"        image",[42,410,200],{"class":112},[42,412,152],{"class":116},[42,414,265],{"class":112},[42,416,268],{"class":184},[42,418,187],{"class":116},[42,420,190],{"class":112},[42,422,424,427,429,431,433,435,437,439,441,444,446,449,452,454,456,459,461,463,465],{"class":44,"line":423},16,[42,425,426],{"class":196},"          src",[42,428,200],{"class":112},[42,430,128],{"class":184},[42,432,387],{"class":116},[42,434,265],{"class":112},[42,436,287],{"class":184},[42,438,394],{"class":116},[42,440,265],{"class":112},[42,442,443],{"class":184},"editor",[42,445,187],{"class":116},[42,447,448],{"class":112},"{",[42,450,451],{"class":196}," input",[42,453,200],{"class":112},[42,455,137],{"class":112},[42,457,458],{"class":52},"media",[42,460,163],{"class":112},[42,462,131],{"class":112},[42,464,367],{"class":116},[42,466,235],{"class":112},[42,468,470,473,475,477,479,481],{"class":44,"line":469},17,[42,471,472],{"class":196},"          alt",[42,474,200],{"class":112},[42,476,152],{"class":116},[42,478,265],{"class":112},[42,480,287],{"class":184},[42,482,483],{"class":116},"()\n",[42,485,487,490],{"class":44,"line":486},18,[42,488,489],{"class":112},"        }",[42,491,492],{"class":116},")\n",[42,494,496,499],{"class":44,"line":495},19,[42,497,498],{"class":112},"      }",[42,500,492],{"class":116},[42,502,504,507],{"class":44,"line":503},20,[42,505,506],{"class":112},"    }",[42,508,492],{"class":116},[42,510,512],{"class":44,"line":511},21,[42,513,514],{"class":112},"  }\n",[42,516,518,521],{"class":44,"line":517},22,[42,519,520],{"class":112},"}",[42,522,492],{"class":116},[524,525,526],"note",{},[10,527,528,529,532],{},"日期在底层序列化为 ISO 字符串（JSON Schema ",[39,530,531],{},"format: date-time","）。",[534,535,536],"warning",{},[10,537,538,539,541,542,544,545,547,548,551,552,95],{},"从 ",[39,540,140],{}," 重新导出的 ",[39,543,94],{}," 已被弃用，并将在未来版本中移除。请改为从 ",[39,546,90],{},"（或 ",[39,549,550],{},"zod/v3","）导入 ",[39,553,94],{},[23,555,557],{"id":556},"使用-zod-v4","使用 Zod v4",[10,559,560,561,564],{},"Zod v4 提供了原生的 JSON Schema 导出功能。不需要 ",[39,562,563],{},"zod-to-json-schema"," 依赖。",[28,566,568],{"id":567},"安装-zod","安装 Zod",[32,570,572],{"className":34,"code":571,"language":36,"meta":37,"style":37},"pnpm add -D zod\n# 或\nnpm i -D zod\n",[39,573,574,585,589],{"__ignoreMap":37},[42,575,576,578,580,582],{"class":44,"line":45},[42,577,49],{"class":48},[42,579,53],{"class":52},[42,581,56],{"class":52},[42,583,584],{"class":52}," zod\n",[42,586,587],{"class":44,"line":65},[42,588,69],{"class":68},[42,590,591,593,595,597],{"class":44,"line":72},[42,592,75],{"class":48},[42,594,78],{"class":52},[42,596,56],{"class":52},[42,598,584],{"class":52},[32,600,602],{"className":98,"code":601,"filename":100,"language":101,"meta":37,"style":37},"import { defineContentConfig, defineCollection, property } from '@nuxt/content'\nimport { z } from 'zod/v4'\n\nexport default defineContentConfig({\n  collections: {\n    docs: defineCollection({\n      type: 'page',\n      source: 'docs/**/*.md',\n      schema: z.object({\n        title: z.string(),\n        description: z.string().optional(),\n        updatedAt: z.date(),\n        draft: z.boolean().optional(),\n        tags: z.array(z.string()).optional(),\n        hero: z.object({\n          image: property(z.string()).editor({ input: 'media' }),\n          caption: z.string().optional()\n        })\n      })\n    })\n  }\n})\n",[39,603,604,630,649,653,665,673,686,700,715,731,747,769,786,808,836,853,894,915,921,927,933,937],{"__ignoreMap":37},[42,605,606,608,610,612,614,616,618,620,622,624,626,628],{"class":44,"line":45},[42,607,109],{"class":108},[42,609,113],{"class":112},[42,611,117],{"class":116},[42,613,120],{"class":112},[42,615,123],{"class":116},[42,617,120],{"class":112},[42,619,128],{"class":116},[42,621,131],{"class":112},[42,623,134],{"class":108},[42,625,137],{"class":112},[42,627,140],{"class":52},[42,629,143],{"class":112},[42,631,632,634,636,638,640,642,644,647],{"class":44,"line":65},[42,633,109],{"class":108},[42,635,113],{"class":112},[42,637,152],{"class":116},[42,639,131],{"class":112},[42,641,134],{"class":108},[42,643,137],{"class":112},[42,645,646],{"class":52},"zod/v4",[42,648,143],{"class":112},[42,650,651],{"class":44,"line":72},[42,652,172],{"emptyLinePlaceholder":171},[42,654,655,657,659,661,663],{"class":44,"line":175},[42,656,178],{"class":108},[42,658,181],{"class":108},[42,660,117],{"class":184},[42,662,187],{"class":116},[42,664,190],{"class":112},[42,666,667,669,671],{"class":44,"line":193},[42,668,197],{"class":196},[42,670,200],{"class":112},[42,672,203],{"class":112},[42,674,675,678,680,682,684],{"class":44,"line":206},[42,676,677],{"class":196},"    docs",[42,679,200],{"class":112},[42,681,123],{"class":184},[42,683,187],{"class":116},[42,685,190],{"class":112},[42,687,688,690,692,694,696,698],{"class":44,"line":220},[42,689,223],{"class":196},[42,691,200],{"class":112},[42,693,137],{"class":112},[42,695,230],{"class":52},[42,697,163],{"class":112},[42,699,235],{"class":112},[42,701,702,704,706,708,711,713],{"class":44,"line":238},[42,703,241],{"class":196},[42,705,200],{"class":112},[42,707,137],{"class":112},[42,709,710],{"class":52},"docs/**/*.md",[42,712,163],{"class":112},[42,714,235],{"class":112},[42,716,717,719,721,723,725,727,729],{"class":44,"line":255},[42,718,258],{"class":196},[42,720,200],{"class":112},[42,722,152],{"class":116},[42,724,265],{"class":112},[42,726,268],{"class":184},[42,728,187],{"class":116},[42,730,190],{"class":112},[42,732,733,735,737,739,741,743,745],{"class":44,"line":275},[42,734,278],{"class":196},[42,736,200],{"class":112},[42,738,152],{"class":116},[42,740,265],{"class":112},[42,742,287],{"class":184},[42,744,290],{"class":116},[42,746,235],{"class":112},[42,748,749,751,753,755,757,759,761,763,765,767],{"class":44,"line":295},[42,750,298],{"class":196},[42,752,200],{"class":112},[42,754,152],{"class":116},[42,756,265],{"class":112},[42,758,287],{"class":184},[42,760,290],{"class":116},[42,762,265],{"class":112},[42,764,313],{"class":184},[42,766,290],{"class":116},[42,768,235],{"class":112},[42,770,771,774,776,778,780,782,784],{"class":44,"line":320},[42,772,773],{"class":196},"        updatedAt",[42,775,200],{"class":112},[42,777,152],{"class":116},[42,779,265],{"class":112},[42,781,332],{"class":184},[42,783,290],{"class":116},[42,785,235],{"class":112},[42,787,788,790,792,794,796,798,800,802,804,806],{"class":44,"line":339},[42,789,342],{"class":196},[42,791,200],{"class":112},[42,793,152],{"class":116},[42,795,265],{"class":112},[42,797,351],{"class":184},[42,799,290],{"class":116},[42,801,265],{"class":112},[42,803,313],{"class":184},[42,805,290],{"class":116},[42,807,235],{"class":112},[42,809,810,812,814,816,818,820,822,824,826,828,830,832,834],{"class":44,"line":372},[42,811,375],{"class":196},[42,813,200],{"class":112},[42,815,152],{"class":116},[42,817,265],{"class":112},[42,819,384],{"class":184},[42,821,387],{"class":116},[42,823,265],{"class":112},[42,825,287],{"class":184},[42,827,394],{"class":116},[42,829,265],{"class":112},[42,831,313],{"class":184},[42,833,290],{"class":116},[42,835,235],{"class":112},[42,837,838,841,843,845,847,849,851],{"class":44,"line":405},[42,839,840],{"class":196},"        hero",[42,842,200],{"class":112},[42,844,152],{"class":116},[42,846,265],{"class":112},[42,848,268],{"class":184},[42,850,187],{"class":116},[42,852,190],{"class":112},[42,854,855,858,860,862,864,866,868,870,872,874,876,878,880,882,884,886,888,890,892],{"class":44,"line":423},[42,856,857],{"class":196},"          image",[42,859,200],{"class":112},[42,861,128],{"class":184},[42,863,387],{"class":116},[42,865,265],{"class":112},[42,867,287],{"class":184},[42,869,394],{"class":116},[42,871,265],{"class":112},[42,873,443],{"class":184},[42,875,187],{"class":116},[42,877,448],{"class":112},[42,879,451],{"class":196},[42,881,200],{"class":112},[42,883,137],{"class":112},[42,885,458],{"class":52},[42,887,163],{"class":112},[42,889,131],{"class":112},[42,891,367],{"class":116},[42,893,235],{"class":112},[42,895,896,899,901,903,905,907,909,911,913],{"class":44,"line":469},[42,897,898],{"class":196},"          caption",[42,900,200],{"class":112},[42,902,152],{"class":116},[42,904,265],{"class":112},[42,906,287],{"class":184},[42,908,290],{"class":116},[42,910,265],{"class":112},[42,912,313],{"class":184},[42,914,483],{"class":116},[42,916,917,919],{"class":44,"line":486},[42,918,489],{"class":112},[42,920,492],{"class":116},[42,922,923,925],{"class":44,"line":495},[42,924,498],{"class":112},[42,926,492],{"class":116},[42,928,929,931],{"class":44,"line":503},[42,930,506],{"class":112},[42,932,492],{"class":116},[42,934,935],{"class":44,"line":511},[42,936,514],{"class":112},[42,938,939,941],{"class":44,"line":517},[42,940,520],{"class":112},[42,942,492],{"class":116},[23,944,946],{"id":945},"使用-valibot","使用 Valibot",[10,948,949],{},"使用 Valibot 原语定义您的模式。",[28,951,953],{"id":952},"安装-valibot","安装 Valibot",[32,955,957],{"className":34,"code":956,"language":36,"meta":37,"style":37},"pnpm add -D valibot @valibot/to-json-schema\n# 或\nnpm i -D valibot @valibot/to-json-schema\n",[39,958,959,973,977],{"__ignoreMap":37},[42,960,961,963,965,967,970],{"class":44,"line":45},[42,962,49],{"class":48},[42,964,53],{"class":52},[42,966,56],{"class":52},[42,968,969],{"class":52}," valibot",[42,971,972],{"class":52}," @valibot/to-json-schema\n",[42,974,975],{"class":44,"line":65},[42,976,69],{"class":68},[42,978,979,981,983,985,987],{"class":44,"line":72},[42,980,75],{"class":48},[42,982,78],{"class":52},[42,984,56],{"class":52},[42,986,969],{"class":52},[42,988,972],{"class":52},[32,990,992],{"className":98,"code":991,"filename":100,"language":101,"meta":37,"style":37},"import { defineContentConfig, defineCollection, property } from '@nuxt/content'\nimport { object, string, boolean, array, date, optional } from 'valibot'\n\nexport default defineContentConfig({\n  collections: {\n    docs: defineCollection({\n      type: 'page',\n      source: 'docs/**/*.md',\n      schema: object({\n        title: string(),\n        description: optional(string()),\n        updatedAt: date(),\n        draft: optional(boolean()),\n        tags: optional(array(string())),\n        hero: object({\n          image: property(string()).editor({ input: 'media' }),\n          caption: optional(string())\n        })\n      })\n    })\n  }\n})\n",[39,993,994,1020,1065,1069,1081,1089,1101,1115,1129,1141,1153,1169,1181,1197,1218,1230,1268,1283,1289,1295,1301,1305],{"__ignoreMap":37},[42,995,996,998,1000,1002,1004,1006,1008,1010,1012,1014,1016,1018],{"class":44,"line":45},[42,997,109],{"class":108},[42,999,113],{"class":112},[42,1001,117],{"class":116},[42,1003,120],{"class":112},[42,1005,123],{"class":116},[42,1007,120],{"class":112},[42,1009,128],{"class":116},[42,1011,131],{"class":112},[42,1013,134],{"class":108},[42,1015,137],{"class":112},[42,1017,140],{"class":52},[42,1019,143],{"class":112},[42,1021,1022,1024,1026,1029,1031,1034,1036,1039,1041,1044,1046,1049,1051,1054,1056,1058,1060,1063],{"class":44,"line":65},[42,1023,109],{"class":108},[42,1025,113],{"class":112},[42,1027,1028],{"class":116}," object",[42,1030,120],{"class":112},[42,1032,1033],{"class":116}," string",[42,1035,120],{"class":112},[42,1037,1038],{"class":116}," boolean",[42,1040,120],{"class":112},[42,1042,1043],{"class":116}," array",[42,1045,120],{"class":112},[42,1047,1048],{"class":116}," date",[42,1050,120],{"class":112},[42,1052,1053],{"class":116}," optional",[42,1055,131],{"class":112},[42,1057,134],{"class":108},[42,1059,137],{"class":112},[42,1061,1062],{"class":52},"valibot",[42,1064,143],{"class":112},[42,1066,1067],{"class":44,"line":72},[42,1068,172],{"emptyLinePlaceholder":171},[42,1070,1071,1073,1075,1077,1079],{"class":44,"line":175},[42,1072,178],{"class":108},[42,1074,181],{"class":108},[42,1076,117],{"class":184},[42,1078,187],{"class":116},[42,1080,190],{"class":112},[42,1082,1083,1085,1087],{"class":44,"line":193},[42,1084,197],{"class":196},[42,1086,200],{"class":112},[42,1088,203],{"class":112},[42,1090,1091,1093,1095,1097,1099],{"class":44,"line":206},[42,1092,677],{"class":196},[42,1094,200],{"class":112},[42,1096,123],{"class":184},[42,1098,187],{"class":116},[42,1100,190],{"class":112},[42,1102,1103,1105,1107,1109,1111,1113],{"class":44,"line":220},[42,1104,223],{"class":196},[42,1106,200],{"class":112},[42,1108,137],{"class":112},[42,1110,230],{"class":52},[42,1112,163],{"class":112},[42,1114,235],{"class":112},[42,1116,1117,1119,1121,1123,1125,1127],{"class":44,"line":238},[42,1118,241],{"class":196},[42,1120,200],{"class":112},[42,1122,137],{"class":112},[42,1124,710],{"class":52},[42,1126,163],{"class":112},[42,1128,235],{"class":112},[42,1130,1131,1133,1135,1137,1139],{"class":44,"line":255},[42,1132,258],{"class":196},[42,1134,200],{"class":112},[42,1136,1028],{"class":184},[42,1138,187],{"class":116},[42,1140,190],{"class":112},[42,1142,1143,1145,1147,1149,1151],{"class":44,"line":275},[42,1144,278],{"class":196},[42,1146,200],{"class":112},[42,1148,1033],{"class":184},[42,1150,290],{"class":116},[42,1152,235],{"class":112},[42,1154,1155,1157,1159,1161,1163,1165,1167],{"class":44,"line":295},[42,1156,298],{"class":196},[42,1158,200],{"class":112},[42,1160,1053],{"class":184},[42,1162,187],{"class":116},[42,1164,287],{"class":184},[42,1166,394],{"class":116},[42,1168,235],{"class":112},[42,1170,1171,1173,1175,1177,1179],{"class":44,"line":320},[42,1172,773],{"class":196},[42,1174,200],{"class":112},[42,1176,1048],{"class":184},[42,1178,290],{"class":116},[42,1180,235],{"class":112},[42,1182,1183,1185,1187,1189,1191,1193,1195],{"class":44,"line":339},[42,1184,342],{"class":196},[42,1186,200],{"class":112},[42,1188,1053],{"class":184},[42,1190,187],{"class":116},[42,1192,351],{"class":184},[42,1194,394],{"class":116},[42,1196,235],{"class":112},[42,1198,1199,1201,1203,1205,1207,1209,1211,1213,1216],{"class":44,"line":372},[42,1200,375],{"class":196},[42,1202,200],{"class":112},[42,1204,1053],{"class":184},[42,1206,187],{"class":116},[42,1208,384],{"class":184},[42,1210,187],{"class":116},[42,1212,287],{"class":184},[42,1214,1215],{"class":116},"()))",[42,1217,235],{"class":112},[42,1219,1220,1222,1224,1226,1228],{"class":44,"line":405},[42,1221,840],{"class":196},[42,1223,200],{"class":112},[42,1225,1028],{"class":184},[42,1227,187],{"class":116},[42,1229,190],{"class":112},[42,1231,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266],{"class":44,"line":423},[42,1233,857],{"class":196},[42,1235,200],{"class":112},[42,1237,128],{"class":184},[42,1239,187],{"class":116},[42,1241,287],{"class":184},[42,1243,394],{"class":116},[42,1245,265],{"class":112},[42,1247,443],{"class":184},[42,1249,187],{"class":116},[42,1251,448],{"class":112},[42,1253,451],{"class":196},[42,1255,200],{"class":112},[42,1257,137],{"class":112},[42,1259,458],{"class":52},[42,1261,163],{"class":112},[42,1263,131],{"class":112},[42,1265,367],{"class":116},[42,1267,235],{"class":112},[42,1269,1270,1272,1274,1276,1278,1280],{"class":44,"line":469},[42,1271,898],{"class":196},[42,1273,200],{"class":112},[42,1275,1053],{"class":184},[42,1277,187],{"class":116},[42,1279,287],{"class":184},[42,1281,1282],{"class":116},"())\n",[42,1284,1285,1287],{"class":44,"line":486},[42,1286,489],{"class":112},[42,1288,492],{"class":116},[42,1290,1291,1293],{"class":44,"line":495},[42,1292,498],{"class":112},[42,1294,492],{"class":116},[42,1296,1297,1299],{"class":44,"line":503},[42,1298,506],{"class":112},[42,1300,492],{"class":116},[42,1302,1303],{"class":44,"line":511},[42,1304,514],{"class":112},[42,1306,1307,1309],{"class":44,"line":517},[42,1308,520],{"class":112},[42,1310,492],{"class":116},[23,1312,1313],{"id":1313},"选择验证器",[1315,1316,1317,1327],"ul",{},[1318,1319,1320,1323,1324,1326],"li",{},[14,1321,1322],{},"Zod v3","：经过实战检验，拥有丰富的生态系统；使用重新导出的 ",[39,1325,94],{}," 提供出色的开发体验。",[1318,1328,1329,1331,1332,1334],{},[14,1330,20],{},"：轻量级且快速；从 ",[39,1333,1062],{}," 引入您自己的导入器。",[10,1336,1337],{},"只安装和使用您需要的验证器。Nuxt Content 会自动检测已安装的支持的验证器。",[23,1339,1340],{"id":1340},"支持其他验证器",[10,1342,1343,1344,1351],{},"Nuxt Content 内部将您的集合模式转换为 JSON Schema Draft-07。如果您首选的验证器可以转换为 Draft-07（或有兼容的适配器），它就可以被支持。目前，Zod（v3 和 v4）和 Valibot 会被自动检测。如果您希望获得对另一个验证器的一等支持，请考虑在 ",[1345,1346,1350],"a",{"href":1347,"rel":1348},"https://github.com/nuxt/content",[1349],"nofollow","Nuxt Content 仓库"," 中提交 issue 或 PR。",[23,1353,1355],{"id":1354},"编辑器元数据可选","编辑器元数据（可选）",[10,1357,1358,1359,1362],{},"您可以通过 ",[39,1360,1361],{},"property(...).editor({ ... })"," 为 Studio 丰富字段，两种验证器都支持此功能。有关映射详情，请参阅 Studio 文档。",[1364,1365,1367],"tip",{"to":1366},"/docs/studio/content",[10,1368,1369],{},"了解编辑器元数据如何映射到 Studio 中的表单输入。",[1371,1372,1373],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-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);}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":37,"searchDepth":65,"depth":65,"links":1375},[1376,1379,1382,1385,1386,1387],{"id":25,"depth":65,"text":26,"children":1377},[1378],{"id":30,"depth":72,"text":30},{"id":556,"depth":65,"text":557,"children":1380},[1381],{"id":567,"depth":72,"text":568},{"id":945,"depth":65,"text":946,"children":1383},[1384],{"id":952,"depth":72,"text":953},{"id":1313,"depth":65,"text":1313},{"id":1340,"depth":65,"text":1340},{"id":1354,"depth":65,"text":1355},"进阶教程","使用您首选的验证器定义集合模式，并享受完整的类型安全。","md",null,{},{"title":1394,"icon":1395},"验证器","i-lucide-check-circle","/docs/framework/validators",{"title":5,"description":1389},"docs/framework/validators","p9txj4OWoKPYKnQUELkcSGiQKJXUTeAxRzr-XybeaoQ",[1401,1406],{"title":1402,"path":1403,"stem":1404,"icon":1405,"children":-1},"类型","/docs/framework/types","docs/framework/types","i-lucide-file-text",{"title":1407,"path":1408,"stem":1409,"icon":1410,"children":-1},"宝塔部署","/docs/introduction/bt","docs/introduction/1.bt","i-lucide-server",[1412,1417,1422,1428,1431,1433,1437,1443,1449,1455,1460,1465],{"title":1413,"path":1414,"category":1388,"order":1391,"navigation":1415},"定义内容集合","/docs/framework/define",{"title":1416,"icon":1405},"定义",{"title":1418,"path":1419,"category":1388,"order":1391,"navigation":1420},"前置准备","/docs/framework/prerequisites",{"title":1418,"icon":1421},"i-lucide-database",{"title":1423,"path":1424,"category":1388,"order":1391,"navigation":1425},"集合源","/docs/framework/sources",{"title":1426,"icon":1427},"源","i-lucide-upload",{"title":1429,"path":1403,"category":1388,"order":1391,"navigation":1430},"集合类型",{"title":1402,"icon":1405},{"title":5,"path":1396,"category":1388,"order":1391,"navigation":1432},{"title":1394,"icon":1395},{"title":1434,"path":1408,"category":1435,"order":1391,"navigation":1436},"宝塔面板部署","入门指南",{"title":1407,"icon":1410},{"title":1438,"path":1439,"category":1435,"order":1391,"navigation":1440},"开源与商业化","/docs/introduction/configuration",{"title":1441,"icon":1442},"商业化","i-lucide-dollar-sign",{"title":1444,"path":1445,"category":1435,"order":1391,"navigation":1446},"智言AI介绍","/docs/introduction/start",{"title":1447,"icon":1448},"介绍","i-lucide-info",{"title":1450,"path":1451,"category":1435,"order":1391,"navigation":1452},"迁移指南","/docs/introduction/migration",{"title":1453,"icon":1454},"迁移","i-lucide-arrow-right",{"title":1456,"path":1457,"category":1435,"order":1391,"navigation":1458},"手动安装","/docs/introduction/manual-installation",{"title":1456,"icon":1459},"i-lucide-terminal",{"title":1461,"path":1462,"category":1435,"order":1391,"navigation":1463},"Docker安装","/docs/introduction/docker-installation",{"title":1461,"icon":1464},"i-lucide-box",{"title":1466,"path":1467,"category":1435,"order":1391,"navigation":1468},"演示环境","/docs/introduction/demo",{"title":1466,"icon":1469},"i-lucide-download",1775201089881]