You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I encountered an issue while deleting item from BootstrapCollectionType.
When you delete one of the items using forms, the last item is always deleted instead. I've already debugged a little bit a found out that the problem is in the ReorderCollectionSubscriber.
This subscribers resets keys of the array and that's why the last item is always deleted.
For example:
I have an array:
[
0 => "zero",
1 => "one",
2 => "two",
]
By using forms I delete first array element and all I have now is:
[
1 => "one",
2 => "two",
]
When this array is passed to the ReorderCollectionSubscriber in changes array to:
[
0 => "one",
1 => "two",
]
And this array is at some point passed to doctrine, doctrine does the calculation and from the array it assumes that the array element with key 2 was deleted and so the last entry is deleted from the database.
Maybe I forgot to set something but I don't know why and I don't even know why this ReorderCollectionSubscriber is doing this at all.
In my opinion this is quite a serious bug and should be addresses as soon as possible. For the current project I just commented out the adding of ReorderCollectionSubscriber to BootstrapCollectionType and the problem is gone and as far as I see everything is working normally. But not sure if this is the proper solution.
The text was updated successfully, but these errors were encountered:
I encountered an issue while deleting item from BootstrapCollectionType.
When you delete one of the items using forms, the last item is always deleted instead. I've already debugged a little bit a found out that the problem is in the ReorderCollectionSubscriber.
This subscribers resets keys of the array and that's why the last item is always deleted.
For example:
I have an array:
By using forms I delete first array element and all I have now is:
When this array is passed to the
ReorderCollectionSubscriber
in changes array to:And this array is at some point passed to doctrine, doctrine does the calculation and from the array it assumes that the array element with key
2
was deleted and so the last entry is deleted from the database.Maybe I forgot to set something but I don't know why and I don't even know why this
ReorderCollectionSubscriber
is doing this at all.In my opinion this is quite a serious bug and should be addresses as soon as possible. For the current project I just commented out the adding of
ReorderCollectionSubscriber
toBootstrapCollectionType
and the problem is gone and as far as I see everything is working normally. But not sure if this is the proper solution.The text was updated successfully, but these errors were encountered: