{"record":{"id":"e4f6d04057ca1c79","repo":"z-song/laravel-admin","slug":"invalid-menu-errors","errorCode":null,"errorMessage":"Invalid menu:\r\n{errors}","messagePattern":"Invalid menu:\r\n(.+?)","errorType":"validation","errorClass":"Exception","httpStatus":null,"severity":"error","filePath":"src/Extension.php","lineNumber":283,"sourceCode":"     *\n     * @param array $menu\n     *\n     * @throws \\Exception\n     *\n     * @return bool\n     */\n    public function validateMenu(array $menu)\n    {\n        /** @var \\Illuminate\\Validation\\Validator $validator */\n        $validator = Validator::make($menu, $this->getMenuValidationRules());\n\n        if ($validator->passes()) {\n            return true;\n        }\n\n        $message = \"Invalid menu:\\r\\n\".implode(\"\\r\\n\", Arr::flatten($validator->errors()->messages()));\n\n        throw new \\Exception($message);\n    }\n\n    /**\n     * Get menu validation rules.\n     *\n     * @return array\n     */\n    protected function getMenuValidationRules()\n    {\n        return [\n            'title'    => 'required',\n            'path'     => ['required', Rule::unique(Config::get('admin.database.menu_table'), 'uri')],\n            'icon'     => 'required',\n            'children' => 'nullable|array',\n        ];\n    }\n\n    /**","sourceCodeStart":265,"sourceCodeEnd":301,"githubUrl":"https://github.com/z-song/laravel-admin/blob/67c441eb78ecc5437e59775d89770cd9c2cb1e05/src/Extension.php#L265-L301","documentation":"Error \"Invalid menu:\r\n{errors}\" thrown in z-song/laravel-admin.","triggerScenarios":"Thrown at src/Extension.php:283 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"67c441eb78ecc5437e59775d89770cd9c2cb1e05","analyzedAt":"2026-08-21T02:51:03.143Z","schemaVersion":2},"datasetVersion":"2026-08-21T03:17:12.404Z"}