Go to file
guqing 1be6a07d96
refactor: avoid NPE caused by children field data problem (#2645)
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.0

#### What this PR does / why we need it:
菜单和分类数列表加强健壮性,防止因为 children 字段存在垃圾数据时导致 NPE 问题
#### Which issue(s) this PR fixes:
a part of #2643

#### Special notes for your reviewer:
how to test it?
1. 创建一个层级结构菜单,比如
```
A
|-B
|-C
```
2. 删除菜单 C 然后访问主题端首页不会发生以下异常信息
```
Caused by: java.lang.NullPointerException: Cannot invoke "run.halo.app.theme.finders.vo.MenuItemVo.setParentName(String)" because "childNode" is null
```

/cc @halo-dev/sig-halo 
#### Does this PR introduce a user-facing change?

```release-note
修复获取菜单和分类列表时会出现 NPE 的问题
```
2022-11-01 13:30:16 +00:00
.github Add Pull Request template for default branch (#2513) 2022-10-06 11:00:25 +00:00
config/checkstyle chore: add checkstyle rule (#2091) 2022-05-17 06:46:11 +00:00
docs Refine logic of form login and logout (#2528) 2022-10-11 08:04:14 +00:00
gradle/wrapper Create basic project structure for halo 2.0 (#1699) 2022-03-04 15:04:11 +08:00
hack chore: add cherry_pick_pull.sh for cherry-picking pull request (#1554) 2021-12-03 10:21:24 +08:00
src refactor: avoid NPE caused by children field data problem (#2645) 2022-11-01 13:30:16 +00:00
.editorconfig refactor: next line config (#1844) 2022-04-14 07:49:17 +00:00
.gitattributes Refactor .gitignore 2019-04-03 11:37:59 +08:00
.gitignore Fix the problem of generating permalink due to special filename (#2462) 2022-09-24 04:50:15 +00:00
CODE_OF_CONDUCT.md docs: add CODE_OF_CONDUCT.md (#2150) 2022-06-12 08:10:12 +00:00
CONTRIBUTING.md chore: add cherry_pick_pull.sh for cherry-picking pull request (#1554) 2021-12-03 10:21:24 +08:00
Dockerfile Refactor CICD for Halo next (#2236) 2022-07-12 11:01:00 +08:00
LICENSE Create LICENSE 2018-03-21 21:39:46 +08:00
OWNERS feat: add OWNERS file for prow (#1840) 2022-04-13 17:06:22 +08:00
README.md Update README.md due to 2.0.0-alpha.3 released (#2634) 2022-10-26 09:36:09 +00:00
SECURITY.md Update SECURITY.md 2021-09-29 20:43:15 +08:00
build.gradle Bump jasync-r2dbc-mysql to 2.1.7 (#2631) 2022-10-26 04:24:09 +00:00
gradle.properties Create basic project structure for halo 2.0 (#1699) 2022-03-04 15:04:11 +08:00
gradlew Create basic project structure for halo 2.0 (#1699) 2022-03-04 15:04:11 +08:00
gradlew.bat Create basic project structure for halo 2.0 (#1699) 2022-03-04 15:04:11 +08:00
settings.gradle Bump Spring Boot to 3.0.0-RC1 (#2620) 2022-10-25 02:56:11 +00:00

README.md

Halo logo

Halo [ˈheɪloʊ],一款现代化的开源博客/CMS系统值得一试。

GitHub release GitHub All Releases Docker pulls GitHub last commit GitHub Workflow Status
官网 文档2.0 Alpha 社区 Gitee Telegram 频道


注意

当前分支为 Halo 2.0 的开发分支,目前 Halo 2.0 处于 Alpha 测试阶段,无法从 1.5 直接升级也不建议在生产环境使用。稳定版本Halo 1.x请查阅以下地址

快速开始

Docker

docker run -it -d --name halo-next -p 8090:8090 -v ~/halo-next:/root/halo-next --restart=unless-stopped halohub/halo-dev:2.0.0-alpha.3

详细部署文档请查阅:https://docs.halo.run/2.0.0-SNAPSHOT/getting-started/install/docker

在线体验

生态

可访问 awesome-halo 查看已经适用于 Halo 2.0 的主题和插件,以及适用于 Halo 1.x 的相关仓库。

许可证

license

Halo 使用 GPL-v3.0 协议开源,请遵守开源协议。

贡献

参考 CONTRIBUTING

状态

Repobeats analytics