Subobjects not shown or crash Admin
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 35/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- php, react, typescript
- 領域
- frontend
調査の方向性
リンクされている adminTest の再現手順から始め、readableLink が true または false の場合に Admin が API のリレーションをどのようにレンダリングするかを追跡します。collection と単一オブジェクトのケースを再現し、subobjects が正しく表示されること、さらに Admin が data.map や無効な要素のエラーでクラッシュしなくなったことを確認します。
索引モデルが issue の本文から書いたものです。
説明
API Platform version(s) affected: 3.2.16
Description
With readableLink false Collection displayed as links, single is empty:
#[Groups(groups: ['Main:write'])]
#[ORM\OneToMany(mappedBy: 'main', targetEntity: Sub::class, orphanRemoval: true, cascade: ['remove', 'persist', 'refresh', 'merge', 'detach'])]
#[ApiProperty(readableLink: false, writableLink: false)]
private Collection $subs;
#[Groups(groups: ['Main:write'])]
#[ApiProperty(readableLink: false, writableLink: false)]
#[ORM\ManyToOne(inversedBy: 'mains', cascade: ['remove', 'persist', 'refresh', 'merge', 'detach'])]
private ?One $one = null;
With readableLink true Collection displayed as json:
#[Groups(groups: ['Main:write'])]
#[ORM\OneToMany(mappedBy: 'main', targetEntity: Sub::class, orphanRemoval: true, cascade: ['remove', 'persist', 'refresh', 'merge', 'detach'])]
#[ApiProperty(readableLink: true, writableLink: true)]
private Collection $subs;
With readableLink true Object, Admin crashes:
#[Groups(groups: ['Main:write'])]
#[ApiProperty(readableLink: true, writableLink: true)]
#[ORM\ManyToOne(inversedBy: 'mains', cascade: ['remove', 'persist', 'refresh', 'merge', 'detach'])]
private ?One $one = null;
Unhandled Runtime Error
TypeError: data.map is not a function
Unhandled Runtime Error
Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
Check the render method of `CustomError`.
How to reproduce
Full example: https://github.com/ili101/api-platform/tree/adminTest
- 主要言語
- TypeScript
- スター
- 516
- フォーク
- 134
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
api-platform/admin のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
api-platform/admin#616 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 64/100
api-platform/admin#660 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 50/100
api-platform/admin#659 · リアクション 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
api-platform/admin#631 · コメント 6 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
api-platform/admin#626 · コメント 1 件 · リアクション 1 件 ·
api-platform/admin の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
vercel-labs/just-bash#464 ·
-
looksLikeSlug() is ASCII-only, so non-Latin entity slugs (e.g. Korean) skip exact match and collapse オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
TanStack/tanstack.com#1293 ·