1.侧栏菜单选择“Python”:

点击代码区右上角的“代码魔法棒”图标,在弹出的确认面板中点击“确认”按钮,一秒生成基于FastApi最新框架版本的项目工程。



2.在“深色模式”下预览生成的Python项目代码:



2.在“深色模式”下预览生成的Python项目代码:

`"""

订单领域类

@author 极客学院

@date 2025/03/20

"""

from typing import Optional

from datetime import datetime

from decimal import Decimal

from sqlmodel import SQLModel, Field

from sqlalchemy import Column, BigInteger, DateTime, String, Boolean, Numeric

class Order(SQLModel, table=True):

"""

订单

"""

tablename = "tbl_order"

orderId: Optional[int] = Field(
default=None,
sa_column=Column("id", BigInteger, primary_key=True, autoincrement=True),
description="订单ID"
)
orderNum: str = Field(
sa_column=Column("order_num", String(50), nullable=False),
description="订单号"
)
amount: Decimal = Field(
sa_column=Column("amount", Numeric(10, 2), nullable=False),
description="订单金额"
)
memo: str = Field(
sa_column=Column("memo", String(50), nullable=False),
description="订单描述"
)
creationTime: datetime = Field(
default_factory=datetime.now,
sa_column=Column("creation_time", DateTime, nullable=False),
description="创建时间"
)
creatorId: int = Field(
sa_column=Column("creator_id", BigInteger, nullable=False),
description="创建者ID"
)
creator: str = Field(
sa_column=Column("creator", String(255), nullable=False),
description="创建者"
)
lastModificationTime: Optional[datetime] = Field(
default=None,
sa_column=Column("last_modification_time", DateTime, nullable=True),
description="最近修改时间"
)
lastModifierId: Optional[int] = Field(
default=None,
sa_column=Column("last_modifier_id", BigInteger, nullable=True),
description="最近修改者ID"
)
lastModifier: Optional[str] = Field(
default=None,
sa_column=Column("last_modifier", String(255), nullable=True),
description="最近修改者"
)
isDeleted: bool = Field(
default=False,
sa_column=Column("is_deleted", Boolean, nullable=False),
description="已删除"
)
deletionTime: Optional[datetime] = Field(
default=None,
sa_column=Column("deletion_time", DateTime, nullable=True),
description="删除时间"
)
deleterId: Optional[int] = Field(
default=None,
sa_column=Column("deleter_id", BigInteger, nullable=True),
description="删除者ID"
)
deleter: Optional[str] = Field(
default=None,
sa_column=Column("deleter", String(255), nullable=True),
description="删除者"
)

DTO类代码:"""

新增订单的表单校验DTO

@author 极客学院

@date 2025/03/20

"""

from decimal import Decimal

import re

from pydantic import BaseModel, Field, field_validator, model_validator

from common.validation_utils import ValidationUtils

class OrderCreateDTO(BaseModel):

"""

新增订单的表单校验DTO

"""

orderNum: str = Field(

description="订单号:不能为空,最长不能超过50个字符",

examples=["4624849630"]

)

amount: Decimal = Field(

description="订单金额:不能为null,必须大于或等于0.00,必须小于或等于100.00,数字的值只允许在10位整数和2位小数范围内",

examples=["80.16"]

)

memo: str = Field(

description="订单描述:不能为空,最长不能超过50个字符",

examples=["请加急发货急用。"]

)

@model_validator(mode='before')
def check_required_fields(cls, values):
field_name_map = {
'orderNum': '订单号',
'amount': '订单金额',
'memo': '订单描述',
}
return ValidationUtils.check_required_fields(values, field_name_map) @field_validator('orderNum')
def order_num_validate(cls, v):
if v is None or not v.strip():
raise ValueError('订单号:不能为空')
if len(v) > 50:
raise ValueError('订单号:最长不能超过50个字符')
return v @field_validator('amount')
def amount_validate(cls, v):
if v is not None and v < 0.00:
raise ValueError('订单金额:必须大于或等于0.00')
if v is not None and v > 100.00:
raise ValueError('订单金额:必须小于或等于100.00')
value_str = str(v)
if not re.match(r'^\d{1,10}(\.\d{1,2})?$', value_str):
raise ValueError('订单金额:数字的值只允许在10位整数和2位小数范围内')
return v @field_validator('memo')
def memo_validate(cls, v):
if v is None or not v.strip():
raise ValueError('订单描述:不能为空')
if len(v) > 50:
raise ValueError('订单描述:最长不能超过50个字符')
return v

`

VO类代码:

`"""

订单信息实体

@author 极客学院

@date 2025/03/20

"""

from decimal import Decimal

from pydantic import BaseModel, Field

class OrderVO(BaseModel):

"""

订单信息实体

"""

orderId: int = Field(description="订单ID", examples=["1"])

orderNum: str = Field(description="订单号", examples=["4624849630"])

amount: Decimal = Field(description="订单金额", examples=["80.16"])

memo: str = Field(description="订单描述", examples=["请加急发货急用。"])`

详细操作可去官网免费体验

AI 极客低代码平台快速上手 --生成Python代码的更多相关文章

  1. Ficow 的 AI 平台快速上手指南(ChatGPT, NewBing, ChatGLM-6B, cursor.so)

    本文首发于 Ficow Shen's Blog,原文地址: Ficow 的 AI 平台快速上手指南(ChatGPT, NewBing, ChatGLM-6B, cursor.so). 内容概览 前言 ...

  2. 使用javascript开发的视差滚动效果的云彩 极客标签 - 做最棒的极客知识分享平台

    www.gbtags.com 使用javascript开发的视差滚动效果的云彩 阅读全文:使用javascript开发的视差滚动效果的云彩 极客标签 - 做最棒的极客知识分享平台

  3. 学习Keras:《Keras快速上手基于Python的深度学习实战》PDF代码+mobi

    有一定Python和TensorFlow基础的人看应该很容易,各领域的应用,但比较广泛,不深刻,讲硬件的部分可以作为入门人的参考. <Keras快速上手基于Python的深度学习实战>系统 ...

  4. 【Python五篇慢慢弹】快速上手学python

    快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...

  5. [Dynamic Language] 用Sphinx自动生成python代码注释文档

    用Sphinx自动生成python代码注释文档 pip install -U sphinx 安装好了之后,对Python代码的文档,一般使用sphinx-apidoc来自动生成:查看帮助mac-abe ...

  6. wsdl自动生成Java代码,根据wsdl生成Java代码

    wsdl自动生成Java代码,根据wsdl生成Java代码 >>>>>>>>>>>>>>>>>&g ...

  7. CSS快速入门基础篇,让你快速上手(附带代码案例)

    1.什么是CSS 学习思路 CSS是什么 怎么去用CSS(快速上手) CSS选择器(难点也是重点) 网页美化(文字,阴影,超链接,列表,渐变等) 盒子模型 浮动 定位 网页动画(特效效果) 项目格式: ...

  8. Python系列教程-详细版 | 图文+代码,快速搞定Python编程(附全套速查表)

    作者:韩信子@ShowMeAI 教程地址:http://showmeai.tech/article-detail/python-tutorial 声明:版权所有,转载请联系平台与作者并注明出处 引言 ...

  9. SQL Server代码如何快速格式化,sqlserver代码

    在SQL Server中我们经常需要编写各种SQL脚本,例如存储过程和函数等,由于在编写过程中,经常会进行调整,有些关键字我们用的大写,有的我们用的小写,有的后面结束用:分割有的又没有.对于有强迫症的 ...

  10. 利用graphviz软件和pycallgraph库自动生成Python代码函数调用关系图

    参考博文:https://blog.csdn.net/qq_36408085/article/details/82952846 https://blog.csdn.net/fondax/article ...

随机推荐

  1. Hive - 多种表类型的CURD测试

    关于torc.textfile.orc.es.hyperdrive表的CURD测试 TORC(支持事务的orc表)测试 TORC(分区表)测试 TEXTFILE 表测试 ORC 表测试 ES(Elas ...

  2. Python基础笔记-while、字符串格式化、运算符、基础概念与数据类型

    前言 !!!注意:本系列所写的文章全部是学习笔记,来自于观看视频的笔记记录,防止丢失.观看的视频笔记来自于:哔哩哔哩武沛齐老师的视频:2022 Python的web开发(完整版) 入门全套教程,零基础 ...

  3. [第二章]ABAQUS CM插件中文手册

    ABAQUS Composite Modeler User Manual(zh-CN) Dassault Systèmes, 2018 注: 源文档的交叉引用链接,本文无效 有些语句英文表达更易理解, ...

  4. nnUNet相关方法

  5. 【WPF开发】 direct3d11 调试报错

    环境:VS2022 WPF Win11 过程:准备调试d3d11着色器转换nv12->rgb的过程 报错信息:DXGI_ERROR_SDK_COMPONENT_MISSING 应用程序请求的操作 ...

  6. BFS 2025/1/16

    BFS Basic 主要特点:空间复杂度较高,基于队列 经常用于求最优解的搜索题 经典模型:连通块,最短迷宫路径,曼哈顿距离 Question 01 [ACP2056 山峰与山谷] 主体是广搜模板 难 ...

  7. 什么是 Gork ?

    Grok 是埃隆·马斯克旗下的人工智能公司 xAI 的开发的一系列大型语言模型 (LLMs)产品,包括Grok 1.Grok 2和即将发布的Grok 3. 受<银河系漫游指南>的启发,Gr ...

  8. DotNetGuide 突破了 8K + Star,努力打造C#/.NET/.NET Core全面的学习、工作、面试指南知识库!

    前言 转眼之间维护DotNetGuide(全面的C#/.NET/.NET Core学习.工作.面试指南知识库)已经持续超过了4年多的时间,Commit提交数也超过1400+,在前几天在 GitHub ...

  9. LeetCode1464. 数组中两元素的最大乘积-JAVA

    题目 给你一个整数数组 nums,请你选择数组的两个不同下标 i 和 j,使 (nums[i]-1)*(nums[j]-1) 取得最大值.请你计算并返回该式的最大值. 示例 1: 输入:nums = ...

  10. 第八届机械工程与应用复合材料国际会议(MEACM 2025)

    第八届机械工程与应用复合材料国际会议(MEACM 2025) 吉隆坡,马来西亚 2025年8月25-27日 会议简介:2025年第八届机械工程与应用复合材料国际会议(MEACM 2025)将于2025 ...