Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Detach before attach to prevent uniqueness constraint conflicts#724

Merged
taylorotwell merged 1 commit into
laravel:masterfrom
andheiberg:bug-sync-uniquenesss-constraint-conflicts
Mar 27, 2013
Merged

Detach before attach to prevent uniqueness constraint conflicts#724
taylorotwell merged 1 commit into
laravel:masterfrom
andheiberg:bug-sync-uniquenesss-constraint-conflicts

Conversation

@andheiberg
Copy link
Copy Markdown

Example:
You have a uniqueness constraint on id and position on the pivot table. You have a list of items and each items has a position in the list hence the position field on the pivot.

You would like to remove one item from the bottom of the list and then add another one in it's place. You do this in a form, and get back a json object that has the new desired list of items. You would now like to sync this json object up with the db so you use sync(). Now sync() will try to attach a new item with a position of 3, but that position already exists and an exception is thrown.

By first detaching the old item in position 3 and then attaching the new one this conflict is removed.

Signed-off-by: Andreas Heiberg [email protected]

Example:
You have a uniqueness constraint on id and position on the pivot table. You have a list of items and each items has a position in the list hence the position field on the pivot.

You would like to remove one item from the bottom of the list and then add another one in it's place. You do this in a form, and get back a json object that has the new desired list of items. You would now like to sync this json object up with the db so you use sync(). Now sync() will try to attach a new item with a position of 3, but that position already exists and an exception is thrown.

By first detaching the old item in position 3 and then attaching the new one this conflict is removed.

Signed-off-by: Andreas Heiberg <[email protected]>
taylorotwell added a commit that referenced this pull request Mar 27, 2013
…traint-conflicts

Detach before attach to prevent uniqueness constraint conflicts
@taylorotwell taylorotwell merged commit 6331b3a into laravel:master Mar 27, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants