VueRouterRequest.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. namespace App\Http\Requests;
  3. use Illuminate\Support\Arr;
  4. use Illuminate\Validation\Rule;
  5. class VueRouterRequest extends FormRequest
  6. {
  7. public function rules()
  8. {
  9. $rules = [
  10. 'title' => 'required|max:50',
  11. 'icon' => 'max:50',
  12. 'path' => 'max:50',
  13. 'order' => 'integer|between:-9999,9999',
  14. 'cache' => 'boolean',
  15. 'menu' => 'boolean',
  16. 'roles' => 'array',
  17. 'roles.*' => 'exists:admin_roles,id',
  18. 'permission' => 'nullable|exists:admin_permissions,slug',
  19. 'parent_id' => 'exists:vue_routers,id',
  20. ];
  21. if ($this->isMethod('put')) {
  22. $rules = Arr::only($rules, $this->keys());
  23. }
  24. if ($this->post('parent_id') == 0) {
  25. $rules['parent_id'] = 'nullable';
  26. }
  27. return $rules;
  28. }
  29. public function attributes()
  30. {
  31. return [
  32. 'parent_id' => '父级菜单',
  33. 'title' => '标题',
  34. 'icon' => '图标',
  35. 'path' => '地址',
  36. 'order' => '排序',
  37. 'cache' => '缓存',
  38. 'menu' => '显示',
  39. 'roles' => '角色',
  40. 'roles.*' => '角色',
  41. 'permission' => '权限',
  42. ];
  43. }
  44. }