From a5eb7ef3b7c82e11c95b747503b8ee15a4e103bf Mon Sep 17 00:00:00 2001 From: Henry Date: Wed, 9 Jun 2021 14:03:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A8=A1=E5=9E=8B=E5=AE=9A=E4=B9=89=E6=8B=BC?= =?UTF-8?q?=E9=9F=B3=E8=87=AA=E5=8A=A8=E5=AE=8C=E6=88=90=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/admin/model/AuthRule.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/application/admin/model/AuthRule.php b/application/admin/model/AuthRule.php index 526b6b59..c50af8e6 100644 --- a/application/admin/model/AuthRule.php +++ b/application/admin/model/AuthRule.php @@ -13,9 +13,16 @@ class AuthRule extends Model // 定义时间戳字段名 protected $createTime = 'createtime'; protected $updateTime = 'updatetime'; + // 数据自动完成字段 + protected $insert = ['py', 'pinyin']; + protected $update = ['py', 'pinyin']; + // 拼音对象 + protected static $pinyin = null; protected static function init() { + self::$pinyin = new \Overtrue\Pinyin\Pinyin('Overtrue\Pinyin\MemoryFileDictLoader'); + self::beforeWrite(function ($row) { if (isset($_POST['row']) && is_array($_POST['row']) && isset($_POST['row']['condition'])) { $originRow = $_POST['row']; @@ -37,4 +44,17 @@ class AuthRule extends Model return ['addtabs' => __('Addtabs'), 'dialog' => __('Dialog'), 'ajax' => __('Ajax'), 'blank' => __('Blank')]; } + public function setPyAttr($value, $data) { + if (isset($data['title']) && $data['title']) { + return self::$pinyin->abbr($data['title']); + } + return ''; + } + + public function setPinyinAttr($value, $data) { + if (isset($data['title']) && $data['title']) { + return self::$pinyin->permalink($data['title'], ''); + } + return ''; + } }