assemblee-virtuelle / assemblee-virtuelle/semapps
ReferenceArrayField: erreur lorsque le nombre de ressources retournées ne correspond pas aux nombre de ressources demandées
- Dominant language
- TypeScript
- Stars
- 103
- Forks
- 14
- Avg merge
- 1m
- Merged PRs (30d)
- 2
Description
Par défaut, la méthode `getMany` du semantic data provider ne retourne que les ressources qu'elle arrive à fetcher. Si une ressource a disparu, elle ne la retourne pas.
Malheureusement, React-Admin ne semble pas gérer ça correctement. Lorsqu'on utilise un composant avec `useListContext` à l'intérieur d'un composant `ReferenceArrayField`, si une ressource manque (et donc le nombre de ressources retournées est plus petit que le nombre de ressources fetchées), React-Admin retourne au final 0 ressources et il reste en statut "loading".
En passant une config `returnFailedResources: true`, il est possible de retourner un objet avec uniquement l`@id`. Cela marche, mais après il faut que le composant de type List sache gérer les ressources "vides" (en ne les affichant pas). C'est une solution de contournement du bug.
Cela ressemble au final à un bug React-Admin et il est possible qu'il ait été traité depuis (cela fait plus de 6 mois qu'on ne mets plus à jour). Je propose d'attendre la mise à jour vers la dernière version de React-Admin et, si le problème n'est pas résolu, d'ouvrir une issue React-Admin.
Contributor guide
No contributing guide indexed for this repository
Research direction
No source file or test is named in the issue. Reproduce the missing-resource case with ReferenceArrayField, useListContext, and the semantic data provider after updating React-Admin to the latest version; confirm whether the loading state and empty result are still present. If unresolved, document the reproduction and open an issue against React-Admin rather than changing this repository without a confirmed fix.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react, typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100