User roles, authorisation, on specific projects

Hello,

Currently I am working on a app, so far I have User (with devise) which
are
able to create projects. So, if user1 create project A and project B I
want him, to be able to assign user2 with role admin on project A, and
user2 with moderator admin on project B.
I was thinking in creating a UserRoleProject link table, is it a good
idea?
Also I intend to use CanCan for the authorisation.

Thank you

Thinking more about this, I realised that I should have the fallowing
associations. User has_many Projects, Project belongs_to User, User
has_many UserRole, UserRole belongs_to User, Projects has_many UserRole,
UserRole belongs_to Project, Role has_many UserRole, UserRole belongs_to
Role, is this right?

On Tuesday, July 23, 2013 5:11:55 PM UTC+1, alex wrote:

user2 with moderator role on project B.
I was thinking in creating a UserRoleProject link table, is it a good
idea? Also I intend to use CanCan for the authorisation.

Thank you


Caroco Ltd, Registered in England and Wales 06541105
Concorde House, Trinity Park, Solihull, Birmingham, B37 7UQ

Internet communications are not secure and therefore Caroco does not
accept
legal responsibility for the contents of this message. Although Caroco
operates anti-virus programs, it does not accept responsibility for any
damage whatsoever that is caused by viruses being passed.

On 24 July 2013 11:30, Alex S. [email protected] wrote:

Thinking more about this, I realised that I should have the fallowing
associations. User has_many Projects, Project belongs_to User, User has_many
UserRole, UserRole belongs_to User, Projects has_many UserRole, UserRole
belongs_to Project, Role has_many UserRole, UserRole belongs_to Role, is
this right?

That should work, however if you had a role of Creator or Owner then
you could also setup the creation through the link table and would not
need the direct association between user and projects.

Colin