entrust icon indicating copy to clipboard operation
entrust copied to clipboard

Modified how entrust adds permissions

Open blakethepatton opened this issue 6 years ago • 2 comments

This way, duplicate records aren't added and foreign key constraints don't become an issue.

blakethepatton avatar Aug 29 '18 23:08 blakethepatton

This way, duplicate records aren't added and foreign key constraints don't become an issue.

The sync method takes in an array, and any item with its id missing from that array will be removed https://laravel.com/docs/5.7/eloquent-relationships#Syncing-Associations. Based on the docs you cannot do this $this->perms()->sync($permission, false);

mazeeblanke avatar Oct 16 '18 16:10 mazeeblanke

Based on the docs you cannot do this

Based on the actual complete documentation, the laravel api docs, you can do this without removing records. The sync method acutally takes in a collection OR an array, as well as an optional boolean. Perhaps you didn't notice that I set the second parameter to false?

The documentation: https://laravel.com/api/5.7/Illuminate/Database/Eloquent/Relations/Concerns/InteractsWithPivotTable.html#method_sync

The actual source file: https://github.com/laravel/framework/blob/5.7/src/Illuminate/Database/Eloquent/Relations/Concerns/InteractsWithPivotTable.php#L82

blakethepatton avatar Oct 16 '18 17:10 blakethepatton