IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Django Python Discussion :

[Django] Création d'utilisateur avancé.


Sujet :

Django Python

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 16
    Par défaut [Django] Création d'utilisateur avancé.
    Bonjour!

    J'aimerais crée des utilisateurs personnalisé (faire en sorte qu'ils puissent mettre leurs localisation par exemple), j'ai donc crée une application authUser avec un foreignKey vers un user seulement je pense que je m'y prend mal. voici la fonction qui me permet de rajouter des utilisateurs avec un formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    def addUser(request):
    	name = request.POST['identifiant']
    	password = request.POST['pass']
    	password2 = request.POST['passconfirm']
    	mail= request.POST['mail']
    	jabber = request.POST['jabber']
    	ville = request.POST['ville']
    	site = request.POST['site']
    	if(password == password2):
    #Ici, je crée un utilisateur.
    		p = User(username=name,password=password,email=mail)
    		p.save()
    
    	else:
    		return render_to_response('error.html', {
    		'error_message': "Les mots de passes ne correspondent pas."})
    #Ici j'ajoute les informations supplémentaires et crée donc les informations relative a l'utilisateur "p.id".
    	newid = AuthUser(user_id=p.id,jabber=jabber,site=site,localisation=ville,)
    	newid.save()
    
    	return render_to_response('authUser/formAddUser.html')
    Il me rajoute bien un nouvel 'AuthUser' dans la base mais les champs sont vides! Impossible de cliquer sur l'un d'eux car il n'y a aucun lien.

    Il y a t'il quelque chose de plus propre à faire?
    Merci d'avance!

  2. #2
    Membre émérite
    Avatar de GnuVince
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    679
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 679
    Par défaut
    Essaye:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    newid = AuthUser()
    newid.user = p
    newid.jabber = jabber
    newid.site = site
    newid.localisation = ville
    newid.save()
    Si ça fonctionne, essaye d'enlever la virgule qui traîne au bout de ton appel AuthUser(... ,)

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 16
    Par défaut
    Merci pour ta réponse.

    Je viens d'essayer mais cela fait exactemment la même choses qu'avant : Pas de méssage d'erreur, le render_to_response s'execute, l'authUser est sauvegardé mais impossible de le selectionné dans admin ( les lignes existe mais aucun liens.).

    Je met mon models bien que je ne pense pas que le probleme viennent d'ici.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    class AuthUser(models.Model):
        user	    = models.ForeignKey(auth_models.User)
        site		= models.URLField('site web', core=True, blank=False,max_length=100,)
        jabber		= models.EmailField('jabber', core=True,blank=False,max_length=50,)
        localisation= models.CharField('localisation', core=True, max_length=50,blank=False,) 
     
        class Admin:
            pass
    Merci.

  4. #4
    Membre émérite
    Avatar de GnuVince
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    679
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 679
    Par défaut
    Ton User est bien créé?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 16
    Par défaut
    Oui, il est crée...

  6. #6
    Membre émérite
    Avatar de GnuVince
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    679
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 679
    Par défaut
    Transcris ton code dans un shell et vois ce qui se passe.

  7. #7
    Membre extrêmement actif
    Avatar de kedare
    Homme Profil pro
    SRE
    Inscrit en
    Juillet 2005
    Messages
    1 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : SRE

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 549
    Par défaut
    ca serais pas mieu d'etendre la classe User de django ?

  8. #8
    Membre émérite
    Avatar de GnuVince
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    679
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 679
    Par défaut
    Citation Envoyé par kedare Voir le message
    ca serais pas mieu d'etendre la classe User de django ?
    Non, car le sous-classement de classes modèles est déconseillé et aussi, les modules d'authentification, l'interface admin, etc. assume l'utilisation du modèle User.

  9. #9
    Membre extrêmement actif
    Avatar de kedare
    Homme Profil pro
    SRE
    Inscrit en
    Juillet 2005
    Messages
    1 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : SRE

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 549
    Par défaut
    je pense pas que quelques champs en plus detraque completement l'api d'authentification et l'admin :p

  10. #10
    Membre émérite
    Avatar de GnuVince
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    679
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 679
    Par défaut
    Citation Envoyé par kedare Voir le message
    je pense pas que quelques champs en plus detraque completement l'api d'authentification et l'admin :p
    Le nom est plus le même.

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 16
    Par défaut
    Bon, ben je me suis juste contenté de mettre un "list_display" et la tout s'affiche correctement...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    list_display = ('user', 'site','jabber',)
    Merci pour votre aide!

  12. #12
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 46
    Par défaut
    Même sans cela, dans l'admin, tu aurai du avoir une liste - clickable- des AuthUser crées !!!

    Un peu sous cette forme:

    "AuthUser object"
    "AuthUser object"
    "AuthUser object"

    etc

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 16
    Par défaut
    Vui, mais cela ne fonctionnais pas! c'est donc la seul solution que j'ai trouvé

  14. #14
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 46
    Par défaut
    Quand tu dis "cela ne fonctionnais pas ?" tu veux dire quoi ?
    Tu veux dire que tu n'avais même pas cette liste ?

    Car si c'est le cas ca veut peut être dire que tu as quand même un problème quelque part, et que même si ce n'est plus gênant dans l’admin maintenant, ça pourra ressurgir plus tard sous une autre forme.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Le problème de la création d'utilisateur et de la connection
    Par nnn2050 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 21/12/2005, 23h10
  2. création d'utilisateur et Connexion sur SQL Server 200
    Par da_latifa dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 24/07/2005, 12h26
  3. pb de création d'utilisateurs
    Par devalender dans le forum InterBase
    Réponses: 12
    Dernier message: 06/10/2004, 17h53
  4. Création d'utilisateurs
    Par damaker dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 30/05/2004, 16h18
  5. Création d'utilisateur sous PostgreSQL 7.3.2 avec PHP
    Par duongkhang dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 06/06/2003, 14h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo