From aafd1551815341a162cd16ebb5f8102ac0484def Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E6=98=8A=E5=A4=A9?= <442384644@qq.com> Date: Mon, 12 Oct 2026 10:33:00 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=96=87=E7=AB=A0):=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E9=A1=B5=E5=88=86=E7=B1=BB=E4=B8=8D=E5=9B=9E?= =?UTF-8?q?=E6=98=BE=E4=B8=8E=E5=B0=81=E9=9D=A2=E6=95=B0=E7=BB=84=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/services/article/ArticleServices.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/backend/app/services/article/ArticleServices.php b/backend/app/services/article/ArticleServices.php index f2ebaa8dd..ecb3bc01a 100644 --- a/backend/app/services/article/ArticleServices.php +++ b/backend/app/services/article/ArticleServices.php @@ -109,8 +109,12 @@ class ArticleServices extends BaseService */ public function read(int $id) { - $info = $this->dao->read($id); + // 模型属性赋值会按表字段类型回写(cid 为 varchar),(int) 强转必须放在 toArray 之后才生效, + // 否则详情返回字符串 cid,与分类树的数字 value 不一致导致编辑页级联选择器无法回显 + $info = $this->dao->read($id)->toArray(); $info['cid'] = (int)$info['cid']; + // 封面在表单内是单值字符串,模型获取器已将其拆为数组,此处归一回字符串避免提交时数组写 varchar 报错 + $info['image_input'] = is_array($info['image_input']) ? ($info['image_input'][0] ?? '') : $info['image_input']; $info['content'] = htmlspecialchars_decode($info['content']); return compact('info'); }