You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQLModel 如何仅使用基础模型中的部分字段创建新Schema

基于现有Hero模型创建仅含name、age字段的Schema的方法

有两种常用实现方式,生成的Schema均为普通Pydantic数据模型,不会映射为数据库表:

方法1:独立定义Schema(逻辑最清晰,无额外依赖)

直接基于SQLModel声明新类,仅写入你需要保留的字段即可:

from sqlmodel import SQLModel
from typing import Optional

class HeroNameAgeSchema(SQLModel):
    name: str
    age: Optional[int] = None

方法2:继承Hero模型复用现有字段定义

如果不想重复写字段规则,可以直接继承已有的Hero类,通过model_config指定仅保留需要的字段:

class HeroNameAgeSchema(Hero):
    model_config = {"include": {"name", "age"}}

这种方式会自动复用Hero类中name、age字段的类型、默认值等所有配置,自动过滤掉id、secret_name等不需要的字段。

内容的提问来源于stack exchange,提问作者Akash Ranjan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 08:18:03