ソースを参照

!193 用户管理在编辑时加验证
Merge pull request !193 from F4NNIU/user_management_improvements

F4NNIU 5 年 前
コミット
489a29f15d

+ 1 - 0
application/admin/controller/user/User.php

@@ -66,6 +66,7 @@ class User extends Backend
     public function edit($ids = NULL)
     public function edit($ids = NULL)
     {
     {
         $row = $this->model->get($ids);
         $row = $this->model->get($ids);
+        $this->modelValidate = true;
         if (!$row)
         if (!$row)
             $this->error(__('No Results were found'));
             $this->error(__('No Results were found'));
         $this->view->assign('groupList', build_select('row[group_id]', \app\admin\model\UserGroup::column('id,name'), $row['group_id'], ['class' => 'form-control selectpicker']));
         $this->view->assign('groupList', build_select('row[group_id]', \app\admin\model\UserGroup::column('id,name'), $row['group_id'], ['class' => 'form-control selectpicker']));

+ 24 - 1
application/admin/validate/User.php

@@ -10,6 +10,17 @@ class User extends Validate
      * 验证规则
      * 验证规则
      */
      */
     protected $rule = [
     protected $rule = [
+        'username' => 'require|regex:\w{3,12}|unique:user',
+        'nickname' => 'require|unique:user',
+        'password' => 'regex:\S{6,32}',
+        'email'    => 'require|email|unique:user',
+        'mobile'   => 'require|unique:user'
+    ];
+    
+    /**
+     * 字段描述
+     */
+    protected $field = [
     ];
     ];
     /**
     /**
      * 提示消息
      * 提示消息
@@ -21,7 +32,19 @@ class User extends Validate
      */
      */
     protected $scene = [
     protected $scene = [
         'add'  => [],
         'add'  => [],
-        'edit' => [],
+        'edit' => ['username', 'email', 'nickname', 'password', 'email', 'mobile'],
     ];
     ];
+
+    public function __construct(array $rules = [], $message = [], $field = [])
+    {
+        $this->field = [
+            'username' => __('Username'),
+            'nickname' => __('Nickname'),
+            'password' => __('Password'),
+            'email'    => __('Email'),
+            'mobile'   => __('Mobile')
+        ];
+        parent::__construct($rules, $message, $field);
+    }
     
     
 }
 }

+ 1 - 1
application/admin/view/user/user/edit.html

@@ -1,5 +1,5 @@
 <form id="edit-form" class="form-horizontal" role="form" data-toggle="validator" method="POST" action="">
 <form id="edit-form" class="form-horizontal" role="form" data-toggle="validator" method="POST" action="">
-
+    <input type="hidden" name="row[id]" value="{$row.id}">
     <div class="form-group">
     <div class="form-group">
         <label for="c-group_id" class="control-label col-xs-12 col-sm-2">{:__('Group')}:</label>
         <label for="c-group_id" class="control-label col-xs-12 col-sm-2">{:__('Group')}:</label>
         <div class="col-xs-12 col-sm-4">
         <div class="col-xs-12 col-sm-4">