当前位置: 首页 > article >正文

python flash加一个字段

USE product_db; ALTER TABLE products ADD COLUMN remark TEXT COMMENT 商品备注信息支持长文本 AFTER cost_price;2. 修改数据访问层product_dao.py需要在以下函数中添加remark字段的处理修改get_all_products函数pythondef get_all_products(keyword): # ... 前面代码不变 ... if keyword: sql SELECT id, code, model, name, image_path, DATE_FORMAT(shelf_date, %%Y-%%m-%%d) as shelf_date, supplier, cost_price, remark, created_at FROM products WHERE code LIKE %s OR name LIKE %s OR supplier LIKE %s ORDER BY id DESC else: sql SELECT id, code, model, name, image_path, DATE_FORMAT(shelf_date, %%Y-%%m-%%d) as shelf_date, supplier, cost_price, remark, created_at FROM products ORDER BY id DESC # ... 后面代码不变 ...修改get_product_by_id函数pythondef get_product_by_id(product_id): # ... 代码 ... sql SELECT id, code, model, name, image_path, DATE_FORMAT(shelf_date, %%Y-%%m-%%d) as shelf_date, supplier, cost_price, remark, created_at FROM products WHERE id %s # ... 后面代码不变 ...修改create_product函数pythondef create_product(code, model, name, image_path, shelf_date, supplier, cost_price, remarkNone): 新增商品记录 conn get_connection() if not conn: return False, 数据库连接失败 try: cursor conn.cursor() # 插入SQL语句添加 remark 字段 sql INSERT INTO products (code, model, name, image_path, shelf_date, supplier, cost_price, remark) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) cursor.execute(sql, (code, model, name, image_path, shelf_date, supplier, cost_price, remark)) conn.commit() new_id cursor.lastrowid return True, new_id except Exception as e: conn.rollback() return False, str(e) finally: if cursor in locals(): cursor.close() if conn: conn.close()修改update_product函数pythondef update_product(product_id, code, model, name, image_path, shelf_date, supplier, cost_price, remarkNone): 更新商品信息 conn get_connection() if not conn: return False, 数据库连接失败 try: cursor conn.cursor() if image_path: # 情况1同时更新图片路径和备注 sql UPDATE products SET code %s, model %s, name %s, image_path %s, shelf_date %s, supplier %s, cost_price %s, remark %s WHERE id %s cursor.execute(sql, (code, model, name, image_path, shelf_date, supplier, cost_price, remark, product_id)) else: # 情况2不更新图片路径保留原图但更新备注 sql UPDATE products SET code %s, model %s, name %s, shelf_date %s, supplier %s, cost_price %s, remark %s WHERE id %s cursor.execute(sql, (code, model, name, shelf_date, supplier, cost_price, remark, product_id)) conn.commit() return True, None except Exception as e: conn.rollback() return False, str(e) finally: if cursor in locals(): cursor.close() if conn: conn.close()3. 修改主程序app.py修改add_product路由pythonapp.route(/add, methods[GET, POST]) def add_product(): # ... GET请求处理不变 ... if request.method POST: # 1. 获取表单数据 code request.form.get(code, ).strip() model request.form.get(model, ).strip() name request.form.get(name, ).strip() shelf_date request.form.get(shelf_date, ) supplier request.form.get(supplier, ).strip() cost_price request.form.get(cost_price, ) remark request.form.get(remark, ).strip() # 获取备注 # ... 校验逻辑 ... # 调用数据访问层 success, result dao.create_product( codecode, modelmodel, namename, image_pathimage_path, shelf_dateshelf_date, suppliersupplier, cost_pricecost_price, remarkremark if remark else None # 添加备注参数 ) # ... 后续处理 ...修改edit_product路由pythonapp.route(/edit/int:product_id, methods[GET, POST]) def edit_product(product_id): # ... 获取商品信息 ... if request.method POST: # 获取表单数据 code request.form.get(code, ).strip() model request.form.get(model, ).strip() name request.form.get(name, ).strip() shelf_date request.form.get(shelf_date, ) supplier request.form.get(supplier, ).strip() cost_price request.form.get(cost_price, ) remark request.form.get(remark, ).strip() # 获取备注 # ... 校验逻辑 ... # 调用数据访问层 success, error_msg dao.update_product( product_idproduct_id, codecode, modelmodel, namename, image_pathnew_image_path, shelf_dateshelf_date, suppliersupplier, cost_pricecost_price, remarkremark if remark else None # 添加备注参数 ) # ... 后续处理 ...4. 修改模板文件add_product.html在成本价字段后面添加备注字段htmldiv classmb-3 label classform-label成本价 */label input typenumber step0.01 namecost_price classform-control value{{ product.cost_price if product else }} required /div !-- 添加备注字段 -- div classmb-3 label classform-label备注/label textarea nameremark classform-control rows4 placeholder请输入商品备注信息...{{ product.remark if product else }}/textarea small classtext-muted可输入商品详细说明、注意事项等最多65535字符/small /div button typesubmit classbtn btn-primary{{ 更新 if is_edit else 添加 }}/button5. 修改列表页面index.html在表格中添加备注列可选htmlthead tr thID/th th图片/th th商品码/th th型号/th th名称/th th上架日期/th th进货商/th th成本价/th th备注/th !-- 新增备注列 -- th操作/th /tr /thead tbody {% for product in products %} tr !-- ... 其他字段 ... -- td{{ product.remark|truncate(50) if product.remark else - }}/td !-- 备注列限制显示50字符 -- !-- ... 操作按钮 ... -- /tr {% endfor %} /tbody数据类型选择建议TEXT: 最多 65,535 字符约64KB- 适合一般备注MEDIUMTEXT: 最多 16,777,215 字符约16MB- 适合较长内容LONGTEXT: 最多 4,294,967,295 字符约4GB- 适合超长内容如果备注可能很长建议使用MEDIUMTEXTsqlremark MEDIUMTEXT COMMENT 商品备注信息支持长文本总结如下:添加备注字段需要修改的文件清单 需要修改的文件共5个1.products.sql- 数据库表结构位置:/home/x79/pycode/projectShangpin3/products.sql修改内容:在CREATE TABLE语句中添加remark TEXT字段或者添加ALTER TABLE语句如果表已存在2.product_dao.py- 数据访问层位置:/home/x79/pycode/projectShangpin3/product_dao.py需要修改的函数共4个:get_all_products()- SELECT 语句添加 remark 字段get_product_by_id()- SELECT 语句添加 remark 字段create_product()- INSERT 语句添加 remark 参数update_product()- UPDATE 语句添加 remark 参数3.app.py- 主应用程序位置:/home/x79/pycode/projectShangpin3/app.py需要修改的路由共2个:add_product()- POST请求中获取 remark 表单数据并传递edit_product()- POST请求中获取 remark 表单数据并传递4.add_product.html- 添加/编辑表单模板位置:/home/x79/pycode/projectShangpin3/templates/add_product.html修改内容:在成本价字段后面添加备注文本框textarea5.index.html- 商品列表模板位置:/home/x79/pycode/projectShangpin3/templates/index.html修改内容可选:表格头部添加备注列表格行中添加备注数据显示 修改优先级优先级文件是否必须说明 必须products.sql✅ 是数据库需要添加字段 必须product_dao.py✅ 是程序需要读写备注字段 必须app.py✅ 是需要获取和传递备注数据 必须add_product.html✅ 是用户需要输入备注 可选index.html⚠️ 建议列表页显示备注信息

相关文章:

python flash加一个字段

USE product_db; ALTER TABLE products ADD COLUMN remark TEXT COMMENT 商品备注信息,支持长文本 AFTER cost_price;2. 修改数据访问层(product_dao.py)需要在以下函数中添加 remark 字段的处理:修改 get_all_products 函数&…...

UPS电源部分

1.法国最好的ups 施耐德电器 美国最好的ups 伊顿 瑞士最好的ups ABB 日本最好的ups 三菱电器 台湾是 台达电子 对的吗2.施耐德电气 (Schneider Electric):虽然公司总部在法国,但其UPS业务的核心是旗下的APC(美国电力转换公司&…...

让薪酬跟着人才走:国企核心人才激励保留的五个管理命题

当前,国有企业三项制度改革已进入攻坚深化期。劳动合同签订率、岗位说明书覆盖率、绩效考核实施率等量化指标普遍处于高位,制度框架的“四梁八柱”已基本确立。但在改革向纵深推进过程中,核心人才流失问题却时有发生。据调研反映,…...

华南x79-8d 支持 E5-2680 V3 或者 E5-2680 V4吗

不支持。 华南金牌 X79-8D 主板仅支持 E5-2600系列V1和V2版本的处理器,无法兼容您提到的 E5-2680 V3 或 V4。以下是关于该主板CPU支持情况的详细说明:💡 为什么不支持 V3/V4?根本原因在于CPU的接口和主板芯片组不匹配:…...

如何在Windows 10/11上完美使用PS3手柄:DsHidMini虚拟HID驱动终极指南

如何在Windows 10/11上完美使用PS3手柄:DsHidMini虚拟HID驱动终极指南 【免费下载链接】DsHidMini Virtual HID Mini-user-mode-driver for Sony DualShock 3 Controllers 项目地址: https://gitcode.com/gh_mirrors/ds/DsHidMini 你是否还在为Windows系统无…...

多卡训练加速:HCCL 集合通信实战

前言 单卡训练慢,多卡又踩坑——梯度同步怎么配、拓扑怎么选、带宽怎么压满,这些细节决定分布式训练能不能真正提速。 HCCL(Huawei Collective Communication Library)是昇腾的多卡通信库,对标 NVIDIA 的 NCCL。它封装…...

【Anaconda】使用指南及问题汇总(自用)

安装 1. Anaconda的下载与安装 除了安装路径修改,其他的一路默认就好 2. Anaconda修改环境变量 因为我们这一步才手动添加环境变量,所以第一步安装的时候不要让它自动配置环境变量了。 用户变量或者系统变量都可以。建议系统变量,方便后…...

戴森球计划蓝图架构范式:从模块化设计到星际规模工程的技术演进

戴森球计划蓝图架构范式:从模块化设计到星际规模工程的技术演进 【免费下载链接】FactoryBluePrints 游戏戴森球计划的**工厂**蓝图仓库 项目地址: https://gitcode.com/GitHub_Trending/fa/FactoryBluePrints 在戴森球计划的工厂建设中,蓝图设计…...

2026 河北 GEO 优化服务商测评:理性看实力,盘古开物AI智推适配才是硬道理

覆盖石家庄、唐山、保定、邯郸、邢台,立足华北,辐射全国,不搞噱头,只讲真实能力随着生成式 AI 全面融入商业营销,GEO 优化已经从河北企业的可选服务,变成抢占区域流量、提升线上可见度的重要方式。尤其制造…...

3分钟快速指南:如何使用Forza Painter将任何图片变成《极限竞速》专业涂装

3分钟快速指南:如何使用Forza Painter将任何图片变成《极限竞速》专业涂装 【免费下载链接】forza-painter Import images into Forza 项目地址: https://gitcode.com/gh_mirrors/fo/forza-painter 还在为《极限竞速:地平线》系列游戏中复杂的车辆…...

Android 指纹浏览器开发教程三:WebView、Chromium 和壳层方案怎么选

导语 Android 指纹浏览器项目走到第三步,往往要面对第一个“分叉路口”:到底用系统 WebView、自编译 Chromium,还是在现有内核外面再套一层壳? 以 EasyBR 指纹浏览器为例,更关键的不是单点参数,而是整条配置…...

PyMICAPS:基于Python的气象数据可视化解决方案,提升Micaps数据处理效率300%

PyMICAPS:基于Python的气象数据可视化解决方案,提升Micaps数据处理效率300% 【免费下载链接】PyMICAPS 气象数据可视化,用matplotlib和basemap绘制micaps数据 项目地址: https://gitcode.com/gh_mirrors/py/PyMICAPS PyMICAPS是一个专…...

3分钟快速上手:用ComfyUI-MimicMotionWrapper实现专业级AI动作迁移

3分钟快速上手:用ComfyUI-MimicMotionWrapper实现专业级AI动作迁移 【免费下载链接】ComfyUI-MimicMotionWrapper 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-MimicMotionWrapper 你是否曾梦想过让普通人也能跳出专业舞者的优美动作?…...

如何用嘎嘎降AI处理土木工程论文:土木工程研究生毕业论文降AI4.8元完整操作教程

如何用嘎嘎降AI处理土木工程论文:土木工程研究生毕业论文降AI4.8元完整操作教程 关于土木工程论文降AI教程,有几个细节提前知道能少走很多弯路。 核心用嘎嘎降AI(www.aigcleaner.com),4.8元,达标率99.26%…...

昇腾CANN的算子“零件厂“:catlass仓库到底在生产什么

如果把昇腾NPU上的大模型算子比作一辆汽车,FlashAttention是发动机,RMSNorm是刹车片,RoPE是方向盘——那catlass是什么?是生产这些零件的模具和机床。 第一次接触昇腾CANN生态的时候,很容易忽略catlass。它不像ops-tr…...

5步掌握Proxmox-Arm64:在ARM设备上部署企业级虚拟化平台的终极指南

5步掌握Proxmox-Arm64:在ARM设备上部署企业级虚拟化平台的终极指南 【免费下载链接】Proxmox-Arm64 Proxmox VE & PBS unofficial arm64 version 项目地址: https://gitcode.com/gh_mirrors/pr/Proxmox-Arm64 你是否曾想过在树莓派、Rockpi或鲲鹏服务器上…...

嘎嘎降AI和率零深度对比:2026年同为低价工具效果差距完整评测报告

嘎嘎降AI和率零深度对比:2026年同为低价工具效果差距完整评测报告 选工具之前做了一周功课,试用了三款,最后定了嘎嘎降AI(www.aigcleaner.com)。 4.8元,知网AI率从61%降到了5.3%,达标率99.26%…...

WorldArena榜单第一名Pelican-Unify 1.0:迈向具身智能统一范式的新里程碑

北京人形机器人创新中心团队发布首个统一理解、推理、想象与行动的具身基础模型 2026年5月 | 技术解读 图1 Pelican-Unify 1.0 统一具身智能模型概览:理解、推理、想象与行动的闭环融合 一、具身智能的范式演进:从模块化到统一化 具身智能&#xff08…...

从需求到上线仅48小时,Lovable无代码交付全流程拆解,含客户验收话术与交付Checklist

更多请点击: https://codechina.net 第一章:从需求到上线仅48小时,Lovable无代码交付全流程拆解,含客户验收话术与交付Checklist 极速交付的核心逻辑 Lovable 平台通过「场景模板 可视化逻辑编排 API 低侵入集成」三重能力压缩…...

AI Agent测试不再黑盒:从Prompt覆盖率到行为一致性,5步构建可审计、可复现、可量化的工业级测试体系

更多请点击: https://kaifayun.com 第一章:AI Agent测试不再黑盒:从Prompt覆盖率到行为一致性,5步构建可审计、可复现、可量化的工业级测试体系 传统AI Agent测试常陷于“输入-输出”表层验证,缺乏对内部推理链、工具…...

【Midjourney颗粒感控制白皮书】:基于1278组V6.1→V6.2渲染样本的统计建模,颗粒强度与--chaos关联性达r=0.93

更多请点击: https://intelliparadigm.com 第一章:Midjourney颗粒感控制白皮书导论 颗粒感(Grain)是Midjourney图像生成中影响画面质感、胶片氛围与艺术真实性的关键隐式参数。它并非独立命令,而是深度耦合于 --sty…...

Agent-S3技术深度解析:首个超越人类性能的智能体框架实战指南

Agent-S3技术深度解析:首个超越人类性能的智能体框架实战指南 【免费下载链接】Agent-S Agent S: an open agentic framework that uses computers like a human 项目地址: https://gitcode.com/GitHub_Trending/ag/Agent-S Agent-S3作为首个在OSWorld基准测…...

Playnite:你的终极游戏库统一管理器,告别平台切换烦恼

Playnite:你的终极游戏库统一管理器,告别平台切换烦恼 【免费下载链接】Playnite Video game library manager with support for wide range of 3rd party libraries and game emulation support, providing one unified interface for your games. 项…...

AI Agent重构餐饮服务链:从排队超15分钟到响应<1.2秒的9大技术跃迁(行业首份效能白皮书)

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;AI Agent重构餐饮服务链&#xff1a;从排队超15分钟到响应<1.2秒的9大技术跃迁&#xff08;行业首份效能白皮书&#xff09; 传统餐饮服务链中&#xff0c;用户进店、点餐、支付、出餐、反馈等环节高度依赖…...

3步终极解决方案:如何专业卸载Windows 10/11的Microsoft Edge浏览器

3步终极解决方案&#xff1a;如何专业卸载Windows 10/11的Microsoft Edge浏览器 【免费下载链接】EdgeRemover A PowerShell script that correctly uninstalls or reinstalls Microsoft Edge on Windows 10 & 11. 项目地址: https://gitcode.com/gh_mirrors/ed/EdgeRemo…...

终极音乐整合方案:用MusicFree插件打造你的专属音乐中心

终极音乐整合方案&#xff1a;用MusicFree插件打造你的专属音乐中心 【免费下载链接】MusicFreePlugins MusicFree播放插件 项目地址: https://gitcode.com/gh_mirrors/mu/MusicFreePlugins 还在为音乐平台会员费烦恼吗&#xff1f;还在忍受不同平台间的歌曲版权割裂吗&…...

预测编码在深度神经网络中的优势与应用

1. 预测编码在深度神经网络中的核心价值预测编码&#xff08;Predictive Coding, PC&#xff09;作为神经科学启发的机器学习范式&#xff0c;近年来在深度学习领域展现出独特优势。这种受大脑信息处理机制启发的方法&#xff0c;与传统的反向传播&#xff08;Backpropagation&…...

为什么你的AI搜索总不准?2026年5款高精度免费工具底层架构拆解:向量引擎、重排序模块与Query理解差异全曝光

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;为什么你的AI搜索总不准&#xff1f;——2026年免费高精度AI搜索工具全景洞察 AI搜索不准&#xff0c;根源常被误判为“模型不够大”&#xff0c;实则多源于查询理解失焦、上下文截断、知识新鲜度缺失与…...

【Gartner认证实践框架】:AI Agent客服上线前必须完成的12项合规性验证清单(含GDPR/等保2.0/金融信创适配)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI Agent客服的合规性验证战略定位 在金融、医疗、电信等强监管行业&#xff0c;AI Agent客服系统不仅需满足功能与体验目标&#xff0c;更须将合规性嵌入其设计、开发与运营全生命周期。合规性验证不是…...

linux IO重定向

IO中的文件描述符0 ,stdin, 标准输入, 指向键盘 1 ,stdout, 标准输出, 指向终端屏幕 2 ,stderr, 标准错误输出, 指向终端屏幕 /dev/null 无底洞&#xff0c;有些不想要的输出信息可以送到这里。& , 在重定向中引用文件描述符.例子.2>&1 , 把 stderr&#xff08;文…...