> */ public function rules(): array { return [ 'ids' => ['required', 'array', 'min:1', 'max:100'], 'ids.*' => ['required', 'integer', 'min:1'], ]; } /** * 유효성 검사 메시지 * * @return array */ public function messages(): array { return [ 'ids.required' => __('validation.required', ['attribute' => 'ID 목록']), 'ids.array' => __('validation.array', ['attribute' => 'ID 목록']), 'ids.min' => __('validation.min.array', ['attribute' => 'ID 목록', 'min' => 1]), 'ids.max' => __('validation.max.array', ['attribute' => 'ID 목록', 'max' => 100]), 'ids.*.required' => __('validation.required', ['attribute' => 'ID']), 'ids.*.integer' => __('validation.integer', ['attribute' => 'ID']), 'ids.*.min' => __('validation.min.numeric', ['attribute' => 'ID', 'min' => 1]), ]; } /** * 검증된 ID 배열 반환 * * @return array */ public function getIds(): array { return $this->validated('ids'); } }