2.6 KiB
2.6 KiB
Owl Admin Start
- Laravel 10.x
- slowlyo/owl-admin
- tucker-eric/eloquentfilter
Helers
上传文件
- 上传文件保存的路径为 相对路径, 如果需要设置 全路径, 添加
->receiver(admin_url('upload_image') . '?full-url=1') - 在模型中, 保存文件的字段需要加上
StorageFile, 详见:app/Models/Keyword.php
sql日志
app/Providers/QueryLogServiceProvider.phpstorage/logs/sql.log
无限级分类
app/Traits/TreePath.php
| column | name | comment |
|---|---|---|
| parent_id | 上级id | 默认: 0 |
| path | 所有上级id | 默认: -, 例如: -1-2-3- |
| sort | 排序 | 正序 |
修改前端文件
resources\admin-views\src\pages\amis\index.tsx
自定义登录页面, 删除高度 20px 的 div
return (
<>
<Spin loading={initPage.loading}
dot
size={8}
className="w-full"
style={{minHeight: initPage.loading ? "500px" : ""}}>
<AmisRender schema={schema}/>
</Spin>
{(settings.footer && !initPage.loading) && <Footer/>}
</>
)
resources\admin-views\src\components\AmisRender\CustomComponents\components\WangEditor\index.tsx
WangEditor 编辑器上传图片时, 把登录授权的 token 带上
// 编辑器配置
const editorConfig: Partial<IEditorConfig> = {
placeholder: props.placeholder,
readOnly: props.disabled || props.static,
autoFocus: props.autoFocus,
maxLength: props.maxLength,
MENU_CONF: {
uploadImage: {
server: props.uploadImageServer,
maxFileSize: props.uploadImageMaxSize || (1024 * 1024 * 2),
maxNumberOfFiles: props.uploadImageMaxNumber || 100,
headers: {
Authorization: `Bearer ${token}`
}
},
uploadVideo: {
server: props.uploadVideoServer,
maxFileSize: props.uploadVideoMaxSize || (1024 * 1024 * 10),
maxNumberOfFiles: props.uploadVideoMaxNumber || 10,
}
}
}
resources\admin-views\src\pages\login\form.tsx
自定义登录页面, 重复请求接口 admin-api/captcha 获取图形验证码
// 读取 localStorage, 设置初始值
useEffect(() => {
const rememberPassword = !!loginParams
setRememberPassword(rememberPassword)
if (formRef.current && rememberPassword) {
const parseParams = JSON.parse(decodeURIComponent(window.atob(loginParams)))
formRef.current.setFieldsValue(parseParams)
}
// if (appSettings.login_captcha) {
// getCaptcha.run()
// }
}, [loginParams])