Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Document: a component cannot be placed inside its own subtree (422)

已关闭 适合新手
#259 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
78/100
Issue 类型
文档
描述清晰度
描述清楚
活跃度
活跃
领域
documentation

调研方向

先查看 content/4.api/ 下关于 API 组件位置和组件组的页面,然后检查这些页面如何描述写入和验证错误。记录列出的 422 情况,包括草稿和已发布组件、允许的共享以及现有循环;当页面解释了每种行为及其注明的适用范围时,任务即告完成。

由索引模型根据 Issue 内容生成。

描述

The API bundle now refuses any write that would place a component inside its own subtree (components-web-app/api-components-bundle#503, fixes components-web-app/api-components-bundle#502).

Please document under the API component positions and component groups pages (content/4.api/):

  • A ComponentPosition whose component contains the target componentGroup, at any depth, is a 422 with a violation on component: "The component cannot be placed in the component group <reference>: the group is inside the component." This applies to POST /_/component_positions, a PATCH of a position's component or componentGroup, and positions embedded in a component write (componentPositions[i].component).
  • Giving a ComponentGroup an owner (components) from inside that group's own subtree is a 422 on components: "The component group <reference> cannot be owned by a component inside it."
  • A published component and its draft count as one component, so placing a container's draft inside the published container (or the reverse) is refused too.
  • Sharing one component in several places (for example, two sibling containers) is still allowed. Only a path back to itself is refused.
  • Existing positions are not re-checked when unrelated fields change, so content already holding a cycle (from fixtures or SQL) can still be read and edited. Reads (security voter, manifest) terminate on it.

The module side (disabling the option with a reason before sending) is cwa-nuxt-module#157.

主要语言
TypeScript
星标
0
派生
0
平均合并
1 小时 20 分钟
30 天内合并 PR
1

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

components-web-app/docs 的其他 Issue

查看 components-web-app/docs 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。