执行命令:
# 创建页面文件
touch src/client/admin/pages/SilverKnowledges.tsx
touch src/client/admin/pages/SilverKnowledgeForm.tsx
复制代码:
SilverKnowledges.tsx 代码复制到对应文件SilverKnowledgeForm.tsx 代码复制到对应文件文件: src/client/admin/menu.tsx
修改内容:
添加图标导入:
import { BookOutlined } from '@ant-design/icons';
在 menuItems 数组中添加新菜单项(建议放在银龄库管理后面):
{
key: 'silver-knowledges',
label: '银龄智库发布',
icon: <BookOutlined />,
path: '/admin/silver-knowledges',
permission: 'silver-knowledge:manage'
}
文件: src/client/admin/routes.tsx
修改内容:
添加页面导入:
import { SilverKnowledgesPage } from './pages/SilverKnowledges';
import { SilverKnowledgeFormPage } from './pages/SilverKnowledgeForm';
在 children 数组中添加路由(建议放在 silver-jobs 后面):
{
path: 'silver-knowledges',
element: <SilverKnowledgesPage />,
errorElement: <ErrorPage />
},
{
path: 'silver-knowledges/new',
element: <SilverKnowledgeFormPage />,
errorElement: <ErrorPage />
},
{
path: 'silver-knowledges/:id/edit',
element: <SilverKnowledgeFormPage />,
errorElement: <ErrorPage />
}
npm install react-quill @types/react-quill dayjs
npm run dev
silver-knowledge:manage 权限解决: 确保在 src/client/admin/index.tsx 中引入:
import 'react-quill/dist/quill.snow.css';
解决: 检查 MinIO 配置和文件上传权限
解决: 在数据库中添加对应权限:
INSERT INTO permissions (name, description) VALUES
('silver-knowledge:manage', '管理银龄智库');
使用管理员账号登录后可直接访问:
http://localhost:5173/admin/silver-knowledges/admin/silver-knowledges如有问题,请参考:
silver-knowledge-admin-code-guide.mdsilver-knowledge-admin-implementation-plan.md