Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork9.7k
[Form] Forms now don't create empty objects anymore if they are empty and not required#3257
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
…etely empty and not required. The empty data for these forms is null.
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.
typo? twoemptys
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.
No typo. It's bound empty (without data) while the form has no (empty) data. It's slightly confusing, I agree.
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.
I see. The other test names also confused me. I think it would be more clear withon preposition.
SotestBindEmptyDataOnEmptyDataCreatesNoObjectIfNotRequired andtestBindOnEmptyDataCreatesObjectIfClassAvailable.
Commits-------bd461e2 [Form] Forms now don't create empty objects anymore if they are completely empty and not required. The empty data for these forms is null.Discussion----------[Form] Forms now don't create empty objects anymore if they are empty and not requiredBug fix: yesFeature addition: noBackwards compatibility break: noSymfony2 tests pass: yesFixes the following tickets:#2861Todo: -If a form (or a nested form) is left completely empty upon submission and is not required, no new data object will be generated anymore. Instead, the form returns null as data.
…ata handling of collections (peterrehm)This PR was squashed before being merged into the 2.5-dev branch (closes#9773).Discussion----------[Form] Added delete_empty option to allow proper emptyData handling of collections| Q | A| ------------- | ---| Bug fix? | yes| New feature? | yes/no?| BC breaks? | no| Deprecations? | no| Tests pass? | yes| Fixed tickets |#9375| License | MIT| Doc PR |symfony/symfony-docs#3338This PR adresses the issue that if you have a form collection with the option required => false and you submit an empty collection so you will get a ArrayCollection that contains en element with the value null.This behaviour was introduced with the following changes from#3257In addition to the above mentioned ticket there is also a description about the same issue here:http://stackoverflow.com/questions/19474872/symfony2-form-collection-allow-add-and-allow-delete-null-error-silexWith the changes of this PR the new option empty_data is introduced. With this option you will be able to ignore/delete such empty collections, so they will neither be validated nor appear as empty field in the result.The option will remove/ignore such empty collections if you add them newly and if allow_add is enabled andremoves such empty collections only if allow_delete is enabled.With setting required and empty_data accordingly it will be now flexible to customize to the outcome you want to achieve.Thanks to @bschussek for the great work together - We have to discuss how to name this option so if deleteor ignore is the appropriate name.Commits-------8bdb7a0 [Form] Added delete_empty option to allow proper emptyData handling of collections
…ata handling of collections (peterrehm)This PR was squashed before being merged into the 2.5-dev branch (closes #9773).Discussion----------[Form] Added delete_empty option to allow proper emptyData handling of collections| Q | A| ------------- | ---| Bug fix? | yes| New feature? | yes/no?| BC breaks? | no| Deprecations? | no| Tests pass? | yes| Fixed tickets | #9375| License | MIT| Doc PR |symfony/symfony-docs#3338This PR adresses the issue that if you have a form collection with the option required => false and you submit an empty collection so you will get a ArrayCollection that contains en element with the value null.This behaviour was introduced with the following changes fromsymfony/symfony#3257In addition to the above mentioned ticket there is also a description about the same issue here:http://stackoverflow.com/questions/19474872/symfony2-form-collection-allow-add-and-allow-delete-null-error-silexWith the changes of this PR the new option empty_data is introduced. With this option you will be able to ignore/delete such empty collections, so they will neither be validated nor appear as empty field in the result.The option will remove/ignore such empty collections if you add them newly and if allow_add is enabled andremoves such empty collections only if allow_delete is enabled.With setting required and empty_data accordingly it will be now flexible to customize to the outcome you want to achieve.Thanks to @bschussek for the great work together - We have to discuss how to name this option so if deleteor ignore is the appropriate name.Commits-------8bdb7a0 [Form] Added delete_empty option to allow proper emptyData handling of collections
…ata handling of collections (peterrehm)This PR was squashed before being merged into the 2.5-dev branch (closes #9773).Discussion----------[Form] Added delete_empty option to allow proper emptyData handling of collections| Q | A| ------------- | ---| Bug fix? | yes| New feature? | yes/no?| BC breaks? | no| Deprecations? | no| Tests pass? | yes| Fixed tickets | #9375| License | MIT| Doc PR |symfony/symfony-docs#3338This PR adresses the issue that if you have a form collection with the option required => false and you submit an empty collection so you will get a ArrayCollection that contains en element with the value null.This behaviour was introduced with the following changes fromsymfony/symfony#3257In addition to the above mentioned ticket there is also a description about the same issue here:http://stackoverflow.com/questions/19474872/symfony2-form-collection-allow-add-and-allow-delete-null-error-silexWith the changes of this PR the new option empty_data is introduced. With this option you will be able to ignore/delete such empty collections, so they will neither be validated nor appear as empty field in the result.The option will remove/ignore such empty collections if you add them newly and if allow_add is enabled andremoves such empty collections only if allow_delete is enabled.With setting required and empty_data accordingly it will be now flexible to customize to the outcome you want to achieve.Thanks to @bschussek for the great work together - We have to discuss how to name this option so if deleteor ignore is the appropriate name.Commits-------8bdb7a0 [Form] Added delete_empty option to allow proper emptyData handling of collections
…ata handling of collections (peterrehm)This PR was squashed before being merged into the 2.5-dev branch (closes #9773).Discussion----------[Form] Added delete_empty option to allow proper emptyData handling of collections| Q | A| ------------- | ---| Bug fix? | yes| New feature? | yes/no?| BC breaks? | no| Deprecations? | no| Tests pass? | yes| Fixed tickets | #9375| License | MIT| Doc PR |symfony/symfony-docs#3338This PR adresses the issue that if you have a form collection with the option required => false and you submit an empty collection so you will get a ArrayCollection that contains en element with the value null.This behaviour was introduced with the following changes fromsymfony/symfony#3257In addition to the above mentioned ticket there is also a description about the same issue here:http://stackoverflow.com/questions/19474872/symfony2-form-collection-allow-add-and-allow-delete-null-error-silexWith the changes of this PR the new option empty_data is introduced. With this option you will be able to ignore/delete such empty collections, so they will neither be validated nor appear as empty field in the result.The option will remove/ignore such empty collections if you add them newly and if allow_add is enabled andremoves such empty collections only if allow_delete is enabled.With setting required and empty_data accordingly it will be now flexible to customize to the outcome you want to achieve.Thanks to @bschussek for the great work together - We have to discuss how to name this option so if deleteor ignore is the appropriate name.Commits-------8bdb7a0 [Form] Added delete_empty option to allow proper emptyData handling of collections
Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets:#2861
Todo: -
If a form (or a nested form) is left completely empty upon submission and is not required, no new data object will be generated anymore. Instead, the form returns null as data.