- 手動でZodスキーマを作成する方法: Zodは、JavaScriptオブジェクトでスキーマを定義するためのライブラリです。以下は、手動でZodスキーマを作成する方法の例です。
const { z } = require("zod");
const schema = z.object({
title: z.string(),
tags: z.array(z.string()),
content: z.string(),
});
console.log(schema);
この例では、z.object
メソッドを使用してオブジェクトスキーマを定義し、各プロパティの型を指定しています。
- JSONスキーマからZodスキーマを生成する方法: もし既存のJSONスキーマがある場合、それをZodスキーマに変換することも可能です。以下は、JSONスキーマからZodスキーマを生成する方法の例です。
const { z } = require("zod");
const { jsonSchema } = require("zod-json-schema");
const jsonSchemaData = {
type: "object",
properties: {
title: { type: "string" },
tags: { type: "array", items: { type: "string" } },
content: { type: "string" },
},
};
const schema = z.fromJSON(jsonSchemaData);
console.log(schema);
この例では、z.fromJSON
メソッドを使用してJSONスキーマをZodスキーマに変換しています。
- JSONデータからZodスキーマを推論する方法: もしJSONデータが既に存在し、それを基にZodスキーマを生成したい場合、Zodには自動的にスキーマを推論する機能があります。以下は、JSONデータからZodスキーマを推論する方法の例です。
const { z } = require("zod");
const jsonData = {
title: "Example Title",
tags: ["tag1", "tag2"],
content: "Example content.",
};
const schema = z.infer(z.object(jsonData));
console.log(schema);
この例では、z.infer
メソッドを使用してJSONデータからスキーマを推論しています。
これらの方法を使用すると、JSONデータをバリデーションするためのZodスキーマを生成できます。必要に応じて、スキーマにバリデーションルールや制約を追加することもできます。