- 博客(11)
- 收藏
- 关注
原创 动态表单的数据结构说明(持续更新中[特殊字符][特殊字符])
本文介绍了动态表单引擎的核心数据库设计,包含5个基础支撑表:机构表(organizations)定义租户信息,实体类型表(entity_types)注册业务对象类型,表单字段配置表(form_fields)存储字段元数据,实体实例表(entity_instances)记录实例元数据,以及实体字段值表(entity_field_values)原子化存储具体值。通过示例展示了如何为清华大学配置学生表单字段,并演示了插入学生"洛天依"数据的完整流程:先在entity_instances创建实例
2025-12-19 09:56:36
576
6
原创 Vue 2 中模板方法引发的无限循环陷阱:el-upload :file-list 动态生成导致无限循环
摘要:在 Vue 2 项目中,当在模板中绑定会修改响应式数据的方法(如 el-upload 的 :file-list="getFileList(step)")时,会导致组件无限重新渲染,造成性能问题甚至页面崩溃。这是因为模板方法在每次渲染都会被调用,若该方法修改了响应式数据会触发重新渲染,形成死循环。解决方案是将数据转换逻辑移到 created/mounted 等生命周期钩子中,确保模板只绑定预计算好的响应式数据,避免在模板中执行有副作用的方法。
2025-11-07 19:00:00
692
原创 Qwen模型API报错:System message can only be the first message. 的深度排查与解决
摘要: 在使用Qwen大模型构建对话系统时,遇到"System message can only be the first message"错误。经排查发现,代码错误地将助手的历史回复包装为SystemMessage类型,而根据Qwen协议,SystemMessage只能用于首条系统指令。正确做法是使用AIMessage表示助手回复,SystemMessage仅用于初始化系统设定。修复后消息结构符合要求,解决了该错误。这提醒开发者要严格区分消息类型语义,确保与目标模型的输入规范一致。
2025-09-28 11:21:04
635
原创 Vue 2 项目中路径传参的两种方式 params 与 query 的区别与使用方式
Vue Router 中 params 和 query 是两种主要传参方式:params 作为动态路由参数,必须定义在路由配置中,属于 URL 路径部分;query 作为查询参数以键值对形式附加在 URL 末尾。使用 params 需通过 name + params 方式跳转,不能使用 path;query 则支持 name 或 path 方式。参数接收可通过 props 或 $route 对象获取。props: true 是可选配置,用于解耦组件与路由。当参数变化时,可通过 watch 监听 $route
2025-09-27 14:14:13
1641
原创 Docker MySQL 无法远程连接?排查发现竟是 IPv4 转发被禁用!——记一次 Docker MySQL 连接失败的深度排查: IPv4 forwarding is disabled
Docker中的MySQL服务突然无法远程连接,本地访问正常但外部主机报错。排查端口映射、用户权限和防火墙均无果,最终发现一条被忽略的警告信息:"IPv4 forwarding is disabled"。问题根源是Linux内核的IPv4转发被禁用,导致Docker网络失效。解决方法包括临时启用转发(sysctl -w net.ipv4.ip_forward=1)或永久修改/etc/sysctl.conf文件并执行sysctl -p使配置生效。建议采用永久方案避免重启失效。
2025-09-18 10:23:34
440
1
原创 如何在vue2+ element-ui 的 el-upload 中使用自定义方法替代默认 action 上传
在Vue2+Element-UI项目中,使用el-upload组件时可通过http-request属性实现自定义上传,替代默认的action方式。关键步骤:1)设置action="#"占位;2)定义customUploadRequest方法,使用axios/fetch封装上传请求;3)正确处理响应和错误回调。这种方法能统一项目请求管理,携带拦截器设置的token等认证信息,实现与后端API一致的错误处理机制。注意必须设置action属性以避免组件校验错误。
2025-09-17 15:31:45
561
原创 为什么 Lombok 的 setter 不能链式调用?—— @Accessors(chain = true) 解惑
摘要:Lombok的@Data默认生成的setter方法返回void,导致无法链式调用。解决方案包括:1) 使用@Accessors(chain = true)让setter返回this;2) 手动编写返回this的setter;3) 使用@Builder构建器模式;4) 传统分步setter调用。需注意链式调用违背JavaBean规范,且继承场景可能中断链式。@Accessors还支持fluent模式去除set前缀,但不能与chain混用。
2025-09-17 10:01:17
1529
原创 一次诡异的 `@RequestBody` 反序列化失败排查:竟是注解导入错误惹的祸
Spring开发中遇到@RequestBody反序列化失败问题,排查发现是错误导入了Swagger的@RequestBody注解而非Spring的版本。手动反序列化能成功,但自动绑定失败。问题根源在于Spring无法识别Swagger注解,导致参数未被正确处理。该案例警示:IDE自动导入同名注解时需谨慎,应确保使用正确的org.springframework.web.bind.annotation.RequestBody。
2025-09-16 09:55:21
1692
原创 Vue 2 响应式陷阱:动态添加属性为何不更新视图?
摘要(149字): 本文剖析Vue 2中动态添加属性导致视图不更新的常见问题。通过课程平台开发案例,展示异步获取图片URL时直接赋值course.picUrl失效的现象,揭示其根源是Vue 2基于Object.defineProperty的响应式机制无法检测新增属性。提出三种解决方案:初始化预定义字段(推荐)、this.$set强制响应式、数组强制刷新,并对比其可靠性。最后总结预防策略,强调所有响应式属性必须初始化定义或通过$set添加,提供可直接套用的安全代码模板,帮助开发者规避此类陷阱。
2025-09-12 11:08:09
750
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅