Question

J'utilise Django 1.2 et je veux avoir deux types d'utilisateurs (une pour les entreprises et un pour les consultants). Je vais utiliser soit un objet dans mon modèle (quelque chose comme un booléen pour is_company ou is_consultant) ou des groupes de Django pour les distinguer - en fonction de ce qui est plus facile à ce problème. Je suppose que ce ne serait pas un gros problème si je ne noob au total;)

J'utilise django-enregistrement pour mon back-end d'authentification, et je vais avoir un formulaire sur ma page Web pour chaque type d'utilisateur (société vs consultant). Je ne pense pas qu'il est préférable de créer deux points de vue différents qui sont presque identiques pour les deux cas, alors je me demande quelle est la meilleure façon est d'identifier / enregistrer les utilisateurs qui se sont inscrits comme l'un des deux types.

Merci pour votre aide.

Était-ce utile?

La solution

Voulez-vous l'utilisateur de choisir si elles sont un consultant ou d'une société lors de l'enregistrement? Si oui, vous pouvez créer votre propre formulaire par le sous-classement RegistrationForm puis passer votre nouveau formulaire dans les paramètres pour django-enregistrement (Lire la doc sur la façon de le faire.)

Pour la forme sous-classe et ajouter le champ supplémentaire que vous feriez quelque chose comme ceci:

from registration.forms import RegistrationForm

USER_TYPES = (
   ('consultant', 'Consultant'),
   ('company', 'Company'),
)

class MyRegistrationForm(RegistrationForm):
     user_type = forms.ChoiceField(choices=USER_TYPES)

A partir de là, vous devez prendre le signal et faire que vous avez besoin avec les données de formulaire django-enregistrement a une grande documentation

Je espère que ce que vous lookign pour.

Autres conseils

Plutôt que de regarder dans le POST, vous pouvez transmettre les informations dans la chaîne de requête. Donc, un lien « bouton » (ce qui est vraiment juste un lien) à /form?type=consultant, et les autres liens vers /form?type=company et vous pouvez le saisir à partir des informations GET

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top