AdminForm.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace install\models;
  3. use yii\base\Model;
  4. use Yii;
  5. class AdminForm extends Model
  6. {
  7. public $email;
  8. public $username;
  9. public $password;
  10. public $passwordConfirm;
  11. const CACHE_KEY = "install-admin-form";
  12. public function rules()
  13. {
  14. return [
  15. [
  16. [
  17. 'username',
  18. 'password',
  19. 'email'
  20. ],
  21. 'required'
  22. ],
  23. [
  24. [
  25. 'password',
  26. 'username'
  27. ],
  28. 'string',
  29. 'max' => 128
  30. ],
  31. [
  32. 'email',
  33. 'email'
  34. ],
  35. // password_confirm
  36. [
  37. [
  38. 'passwordConfirm'
  39. ],
  40. 'required'
  41. ],
  42. [
  43. [
  44. 'passwordConfirm'
  45. ],
  46. 'compare',
  47. 'compareAttribute' => 'password'
  48. ]
  49. ];
  50. }
  51. public function attributeLabels()
  52. {
  53. return [
  54. 'username' => '用户名',
  55. 'password' => '密码',
  56. 'passwordConfirm' => '确认密码',
  57. 'email' => '邮箱'
  58. ];
  59. }
  60. public function loadDefaultValues()
  61. {
  62. $data = \Yii::$app->getCache()->get(AdminForm::CACHE_KEY);
  63. if ($data) {
  64. $this->setAttributes($data);
  65. }
  66. }
  67. public function save()
  68. {
  69. \Yii::$app->getCache()->set(AdminForm::CACHE_KEY, $this->toArray());
  70. return true;
  71. }
  72. }