views:

171

answers:

2

I'm using ORM Auth module and it's difficult to figure out how to do it. I've tried this case:

$user = ORM::factory('user', $id);
$user->roles->delete_all();

And got error ErrorException [ Fatal Error ]: Call to undefined method Database_Query_Builder_Delete::join()

However $user->roles->find_all(); gives me exactly what i want.

+1  A: 

Instead of deleting roles from the database, what you want to do is remove the relationships between the user model and the roles model. You can use the ORM remove() method.

foreach ($user->roles->find_all() as $role)
{
    $user->remove('roles', $role);
}
slacker
Thanks. Works perfectly :) Still, i could not resist to delete roles without ORM DB::delete('roles_users')->where('user_id','=',$id)->execute();
Bob0101
A: 

Just create a ticket for this feature. You can use a code suggested.

biakaveron

related questions