From 77881a27edd7214fab8fa25c65edabb276adfdde Mon Sep 17 00:00:00 2001 From: wolfcode <37436228+wolf-leo@users.noreply.github.com> Date: Mon, 3 Mar 2025 17:58:35 +0800 Subject: [PATCH] fix(curd): resolve select option value binding issue - Update buildOptionView method to use correct field parameter - Add conditional check for templateValue before appending to indexCols --- app/admin/service/curd/BuildCurd.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/admin/service/curd/BuildCurd.php b/app/admin/service/curd/BuildCurd.php index d06bf8d..2f0e867 100644 --- a/app/admin/service/curd/BuildCurd.php +++ b/app/admin/service/curd/BuildCurd.php @@ -1240,7 +1240,7 @@ class BuildCurd } elseif ($val['formType'] == 'select') { $templateFile = "view{$this->DS}module{$this->DS}select"; if (isset($val['bindRelation'])) { - $define = $this->buildOptionView($val['bindRelation']); + $define = $this->buildOptionView($field); } elseif (!empty($val['define'])) { $define = $this->buildOptionView($field); } @@ -1314,7 +1314,7 @@ class BuildCurd } elseif ($val['formType'] == 'select') { $templateFile = "view{$this->DS}module{$this->DS}select"; if (isset($val['bindRelation'])) { - $define = $this->buildOptionView($val['bindRelation'], '{in name="k" value="$row.' . $field . '"}selected=""{/in}'); + $define = $this->buildOptionView($field, '{in name="k" value="$row.' . $field . '"}selected=""{/in}'); } elseif (!empty($val['define'])) { $define = $this->buildOptionView($field, '{in name="k" value="$row.' . $field . '"}selected=""{/in}'); } @@ -1420,7 +1420,7 @@ class BuildCurd $templateValue = ""; } - $indexCols .= $this->formatColsRow("{$templateValue},\r"); + if ($templateValue) $indexCols .= $this->formatColsRow("{$templateValue},\r"); } }