Skip to content

Instantly share code, notes, and snippets.

@wagner
Last active October 19, 2017 13:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save wagner/f6370cfaa3c344d91f23e295b78886b5 to your computer and use it in GitHub Desktop.
Save wagner/f6370cfaa3c344d91f23e295b78886b5 to your computer and use it in GitHub Desktop.
Edição de roles e permissões
1. Editar role
GET /role/123
GET /permissions
GET /role/123/given_permissions
2. Apagar uma permissão
DELETE /role/123/given_permissions/100001
3. Adicionar permissão
POST /role/123/given_permissions
{
permission_id: 4
}
->
{
 "given_permissions": [
   {
     id: 10001,
permission: {
id: 4,
      action: 'update',
      subject: 'customer',
  }
]
}
@americodls
Copy link

Conforme falei. Join table não tem ID, então é como se não existisse esse recurso.

Minha sugestão:

1. Editar role

GET /role/{role_id}
GET /permissions
GET /role/{role_id}/permissions

2. Apagar uma permissão

DELETE /role/{role_id}/permissions/{permission_id}

3. Adicionar permissão

POST /role/{role_id}/permissions/{permission_id}

4. Listar permissões de um perfil de acesso:

GET /role/{role_id}/permissions

Request: <blank>
Response:
{
  "permissions": [
    {
      id: permission_id,
      action: 'update',
      subject: 'customer',
    }
  ]
}

@wagner
Copy link
Author

wagner commented Oct 19, 2017

👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment