AI 极客低代码平台快速上手 --生成Python代码
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代码的更多相关文章
- Ficow 的 AI 平台快速上手指南(ChatGPT, NewBing, ChatGLM-6B, cursor.so)
本文首发于 Ficow Shen's Blog,原文地址: Ficow 的 AI 平台快速上手指南(ChatGPT, NewBing, ChatGLM-6B, cursor.so). 内容概览 前言 ...
- 使用javascript开发的视差滚动效果的云彩 极客标签 - 做最棒的极客知识分享平台
www.gbtags.com 使用javascript开发的视差滚动效果的云彩 阅读全文:使用javascript开发的视差滚动效果的云彩 极客标签 - 做最棒的极客知识分享平台
- 学习Keras:《Keras快速上手基于Python的深度学习实战》PDF代码+mobi
有一定Python和TensorFlow基础的人看应该很容易,各领域的应用,但比较广泛,不深刻,讲硬件的部分可以作为入门人的参考. <Keras快速上手基于Python的深度学习实战>系统 ...
- 【Python五篇慢慢弹】快速上手学python
快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...
- [Dynamic Language] 用Sphinx自动生成python代码注释文档
用Sphinx自动生成python代码注释文档 pip install -U sphinx 安装好了之后,对Python代码的文档,一般使用sphinx-apidoc来自动生成:查看帮助mac-abe ...
- wsdl自动生成Java代码,根据wsdl生成Java代码
wsdl自动生成Java代码,根据wsdl生成Java代码 >>>>>>>>>>>>>>>>>&g ...
- CSS快速入门基础篇,让你快速上手(附带代码案例)
1.什么是CSS 学习思路 CSS是什么 怎么去用CSS(快速上手) CSS选择器(难点也是重点) 网页美化(文字,阴影,超链接,列表,渐变等) 盒子模型 浮动 定位 网页动画(特效效果) 项目格式: ...
- Python系列教程-详细版 | 图文+代码,快速搞定Python编程(附全套速查表)
作者:韩信子@ShowMeAI 教程地址:http://showmeai.tech/article-detail/python-tutorial 声明:版权所有,转载请联系平台与作者并注明出处 引言 ...
- SQL Server代码如何快速格式化,sqlserver代码
在SQL Server中我们经常需要编写各种SQL脚本,例如存储过程和函数等,由于在编写过程中,经常会进行调整,有些关键字我们用的大写,有的我们用的小写,有的后面结束用:分割有的又没有.对于有强迫症的 ...
- 利用graphviz软件和pycallgraph库自动生成Python代码函数调用关系图
参考博文:https://blog.csdn.net/qq_36408085/article/details/82952846 https://blog.csdn.net/fondax/article ...
随机推荐
- C#中对面向standard2.0、standard2.1的项目进行单元测试
单元测试项目的目标框架 (TargetFramework或TargetFrameworks) 不能是standard2.0或standard2.1. 这是因为.NET Standard只是一个规范,它 ...
- 面试题58 - I. 翻转单词顺序
地址:https://leetcode-cn.com/problems/fan-zhuan-dan-ci-shun-xu-lcof/ <?php/**输入一个英文句子,翻转句子中单词的顺序,但单 ...
- 分布式锁—3.Redisson的公平锁
大纲 1.Redisson公平锁RedissonFairLock概述 2.公平锁源码之加锁和排队 3.公平锁源码之可重入加锁 4.公平锁源码之新旧版本对比 5.公平锁源码之队列重排 6.公平锁源码之释 ...
- Java Map一些基本使用方法
1 // Map key值不能相同,value值可以相同 2 // HashMap中的Entry对象是无序排列的 3 4 // 实例化1 5 Map<String, String> map ...
- 【ABAQUS 二次开发笔记】一次获得多个积分点的输出到dat
当使用shell单元进行composite laminate 建模时,可以为每一指定Intergration point 的个数,默认是3个.(abaqus有很多variable可以在intergra ...
- 1h玩转kubernetes
学习k8s就跟学习office三件套上,95%的人只会5%,而5%的知识可以干95%的事情,所以不要觉的k8s难 1 kubernetes 1 什么是kubernetes Kubernetes 是一个 ...
- windows goland go exec "gcc": executable file not found in %PATH%
问题 windows 本地缺少 gcc 编译器 解决方案 下载安装使用 MinGW-w64 第一种 https://winlibs.com/#download-release 下载后解压到磁盘中,然后 ...
- js发送get 、post请求
前言 我们经常会用到js发送网络请求,这里用到XMLHttpRequest,主要是为了考虑早期的IE.分为三步:创建需要的对象.连接和发送.接收. GET请求 var httpRequest = ne ...
- Oracle 给用户赋予dblink权限,创建dblink
1.判断用户是否具备创建database link 的权限 一:查看当前登录用户(如果查询有返回行,则表示具备创建权限,否则,需要创建权限) 1 select * from user_sys_priv ...
- Opencv环境配置一览
OpenCV环境配置一览 专业相关,平时经常会使用到opencv的一些函数,目前主要包括Ubuntu系统,Android系统,本篇文章介绍在两个系统下对应的环境配置策略. Ubuntu环境 附上一个很 ...