Bienvenue sur IndexError.

Ici vous pouvez poser des questions sur Python et le Framework Django.

Mais aussi sur les technos front comme React, Angular, Typescript et Javascript en général.

Consultez la FAQ pour améliorer vos chances d'avoir des réponses à vos questions.

Différents type d'utilisateurs dans un projet Django

+2 votes

Je dois écrire une appli Django avec différents profils utilisateurs.

Mes utilisateurs peuvent être soit:

  1. des employés d'une société avec un rôle dans cette société (fournisseur de services).
  2. des clients "indépendant" (consommateur de services).
  3. des clients qui sont employé d'une société (consommateur de services).

Je me demande comment gérer ses différents profils.

Avec des models client / employé / client_société qui ont une relation OneToOne avec le model "User" ?
Avec un model utilisateur personnalisé ?

demandé 9-Fev-2015 par cyril (146 points)

Le but c'est de gérer des utilisateur s via cette appli ou bien gérer les droits de ces profils dans cette appli ? Ou les 2 ?

Plutôt que appli, j'aurai du écrire "Projet".
Le but c'est d'avoir une appli dans le projet pour gérer les utilisateurs.

Donc la réponse ci dessous est pertinente

1 Réponse

+1 vote
 
Meilleure réponse

Peut être avec l'utilisation de AbstractBaseUser

class BaseUser(AbstractBaseUser):
    email = models.EmailField(unique=True)
    USERNAME_FIELD = 'email'

class Individual(BaseUser):
    pass

class GenericUser(BaseUser):
    pass

class Professional(BaseUser):
    company = models.ForeignKey(Company)
    role = models.CharField(max_length=50)

class Employee(BaseUser):
    company = models.ForeignKey(Company)
répondu 9-Fev-2015 par cyril (146 points)
sélectionné 9-Fev-2015 par cyril
...