adonis-acl icon indicating copy to clipboard operation
adonis-acl copied to clipboard

Relation "roles" does not exist

Open eduardo-spagna opened this issue 4 years ago • 2 comments

I am encountering an error when i try to create a role

app.js:

'adonis-acl/providers/AclProvider' in providers 'adonis-acl/providers/CommandsProvider' in aceProviders Role: 'Adonis/Acl/Role', Permission: 'Adonis/Acl/Permission' in aliases

model User.js:

...
static get traits() {
    return [
      '@provider:Adonis/Acl/HasPermission',
      '@provider:Adonis/Acl/HasRole',
    ];
  }
...

roles.js

// Models
const User = use('App/Models/User');
const Role = use('Role');

async function setRoles() {
  const roleAdmin = new Role();
  roleAdmin.name = 'Administrator';
  roleAdmin.slug = 'administrator';
  roleAdmin.description = 'manage administration privileges';
  await roleAdmin.save();

  console.log(roleAdmin);

  const user = await User.find(1);
  await user.roles().attach([roleAdmin.id]);
}

module.exports = { setRoles };

ERROR

error: relation "roles" does not exist

eduardo-spagna avatar Dec 03 '19 12:12 eduardo-spagna

do you published the migrations?

node ace acl:setup
# then
node ace migrations:run

jonaselan avatar Jan 22 '20 18:01 jonaselan

The model is located in Adonis/Acl/Role

change to: const Role = use('Adonis/Acl/Role');

Kledenai avatar Jul 30 '20 22:07 Kledenai