-
-
Notifications
You must be signed in to change notification settings - Fork 9.2k
Remove limit on deep populate on components #13331
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Does it have to be considered as a new feature since it's on canny? |
Codecov Report
@@ Coverage Diff @@
## master #13331 +/- ##
==========================================
- Coverage 47.92% 47.91% -0.01%
==========================================
Files 239 239
Lines 8814 8813 -1
Branches 1984 1982 -2
==========================================
- Hits 4224 4223 -1
Misses 3783 3783
Partials 807 807
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
I don't think so, we can consider this whatever we want but the canny card should be updated once this is merged (I'm gonna change it to in progress right now) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
This pull request has been mentioned on Strapi Community Forum. There might be relevant details there: https://forum.strapi.io/t/multiple-nested-repeatable-components/665/31 |
|
Hello, i tried the How to test it exemple and it works on Strapi Admin side by editing the files directly. try fetch 1 : const res = await fetchAPI("/testPage", {populate: "*"}); Can you help ? Maybe i missed something on te populate part or ? |
|
Hi, |
|
Once you edit the schema manually to go more than two levels you have continue to edit all of those schemas manually as the content-type builder will no longer work for those content-types or components. This was intended for us to discourage users from nesting components too deeply. |
|
@derrickmehaffy How about instead of discouraging users from using a very common method in CMS for nested components, and something you all had in the previous version, you actually fix the issue and allow us to nest components! |
By doing so it means we have to support it's usage both from a higher level UX but also from the data level and quite simply put, we don't want to because the complex database schema and performance impacts of such are two things that we are not confident in nor is it a methodology we want to support. We unlocked the ability (intentional block) of nested components, by choosing to use them that way you do so at your own risk without us saying if they break we will fix them. There is nothing basic about this feature, they are complex polymorphic relations. Our plan is to have the ability to create new relational entities in the same parent view in the future, components are not the end-all be-all of a CMS and we are a heavily relational CMS, not an object storage one. I'm locking this issue as there is nothing constructive being added to this. We have taken a decision on the topic for now, that decision was made by our product team @Aurelsicoko and @yanniskadiri . If you want to create a feature request for this on https://feedback.strapi.io and collect votes it can be re-evaluated later but I would please ask that you watch your tone to ensure it meets our community code of conduct. |




What does it do?
Removes the hard limit on deep populate for an entity.
(It was not possible before but since we populate relations only once, it is possible to remove the limit)
Why is it needed?
In order to populate the admin edit view when there are more than 2 levels of nested components.
How to test it?
NB: component creation is possible only by editing the files directly, not through the content-type builder.
Related issue(s)/PR(s)