Clicking "Add" twice creates duplicate member record
|Assignee:||Jean-Philippe Lang||% Done:|
|Category:||Permissions and roles|
When editing members for a project:
If you select a user and click "Add" twice before the server request is completed, it will add a duplicate member record. It then shows up as two items in the projects dropdown menu, and probably other side-effects.
1. Add a unique key on `members (user_id, project_id)`
2. Prevent accidental re-submit on the front end, by disabling the button until ajax completes.
#1 Updated by Andrew Vit almost 8 years ago
- % Done changed from 0 to 50
I made a quick patch for the button UI on my github fork:
The members model has a validates_uniqueness_of that should prevent another record with the same value from being created, but maybe because happened concurrently from the double click, it couldn't verify uniqueness. Does this warrant adding a database constraint?