2010-02-16 3 views
1

Je souhaite étendre/sous-classer les groupes d'administrateurs & Classes d'utilisateurs dans Django. CourseAdmin groupe devrait faire ce que l'administrateur peut faire, et ils ont des informations supplémentaires comme email, téléphone, adresse. CourseAdmin devrait être capable de créer CourseAdmins, enseignants, cours et étudiants. Étendre/sous-classer les classes admin & Users dans Django

  • L'enseignant devrait être capable de modifier les cours et les étudiants lui appartiennent. Ils ne peuvent rien créer de nouveau. Je veux utiliser les classes actuelles d'administration de Django Groupe & Utilisateur au lieu de faire le mien. S'il vous plaît veuillez conseiller. Je vous remercie!

  • Répondre

    1

    Voulez-vous dire que tout le groupe CourseAdmin a un email, un téléphone et une adresse? Je doute que.

    Sinon, vous n'avez rien à sous-classer. Il suffit de créer un user profile model (par exemple, e-mail, téléphone, adresse), de créer les groupes: CourseAdmin, Teacher, Students et de configurer les autorisations en conséquence.

    Vous pouvez distinguer les utilisateurs en vérifiant dans quel groupe ils sont.

    En savoir plus sur user authentication.

    +0

    +1 Merci Félix. Je veux dire que chaque utilisateur du groupe CourseAdmins and Teachers possède son propre email, son téléphone et son adresse. Les enseignants ont accès à toutes les tables. Les enseignants ont accès à certaines tables et certaines lignes (cours et étudiants qui appartiennent à cet enseignant). – Viet

    1

    Vous ne pouvez pas étendre à la fois et utiliser les existants. Utilisez plutôt un OneToOneField.

    +0

    +1 Merci Ignacio. Tu m'as aidé plusieurs fois aujourd'hui. Pourriez-vous s'il vous plaît expliquer pourquoi je ne peux pas? Je peux annuler l'enregistrement du droit "Utilisateur"? De plus, je souhaite que les enseignants puissent se connecter au backend d'administration mais limitent leurs droits à l'édition de certaines tables uniquement. – Viet

    +1

    @Viet: Tout ce que vous devez savoir est décrit dans la documentation: http://docs.djangoproject.com/fr/1.1/topics/auth/ –

    +1

    Inutile de perdre votre temps à ne rien enregistrer. Utilisez simplement le système d'autorisations intégré. –