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 :

base de donnee table User (debutant)


Sujet :

Django Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 12
    Par défaut base de donnee table User (debutant)
    Bonsoir

    J'aimerais ajouter des colone a la table user ville, adresse, code postal,pour cela jai creer une nouvel table utilisateur avc une foreignkey sur ma table user comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    class Utilisateur(models.Model):
            user=foreignkey(User)
            adresse=blabla
            codepostal=blabla
    je suppose que c est la marche a suivre ,maintenant jaimerai rentrer des donnees a partir dun formulaire ,quelqun pourrait il mexpliquer la marche a suivre car je bloque a ce niveau
    Merci pour toute vos reponses

  2. #2
    Membre confirmé
    Profil pro
    Développeur Back-End
    Inscrit en
    Septembre 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Septembre 2007
    Messages : 81
    Par défaut une idée
    Salut,
    tu crée deux formulaires: l'un pour le model user et l'autre pour le modele Utilisateur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    from django import forms
    from myapp.models import *
     
    class UtilisateurForm(forms.ModelForm):
      class Meta:
       model=Utilisateur
       exclude=("user",)
     
      def save(self,commit=True):
            if commit:  utilisateur=super(UtilisateurForm,self).save()
            else:   utilisateur=super(UtilisateurForm,self).save(commit=False)
            return utilisateur
    pour le formulaire de creation d'utilisateur tu peux utiliser le UserCreationForm qui est dans django.contrib.auth.forms.
    Apres dans ta vue, tu importe les deux formulaires

    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
     
    from myapp.forms import UtilisateurForm
    from django.contrib.auth.forms import UserCreationForm
    from django.shortcuts import render_to_response
    from django.template import RequestContext
     
    def create_user(request):
     if request.POST:
       formulaire1=UserCreationForm(request.POST)
       formulaire2=UtilisateurForm(request.POST)
       if formulaire1.is_valid() and formulaire2.is_valid():
         new_user=formulaire1.save()
         profil_user=formulaire2.save(commit=False)
         profil_user.user=new_user
         profil_user.save()
      else:
       formulaire1=UserCreationForm()
       formulaire2=UtilisateurForm()
      return render_to_response("formulaire.html",{'form1':formulaire1,'form2':formulaire2},context_instance=RequestContext(request))
    ben j'espère t'avoir aidé!! bye

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 9
    Par défaut
    Le modele User, de django contrib auth, a deja les champs necessaire que tu veux ajouter. Utilise tout simplement contrib auth.

    Si tu veux ajouter des champs additionel tu dois creer ton propre model ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    from django.contrib.auth.models import User
    class MyUser(User):
         champ_xxx = models.CharField(...)
         ...

Discussions similaires

  1. [debutant]selection tables sur Bases de donnees
    Par smutmutant2003 dans le forum SQL
    Réponses: 2
    Dernier message: 13/08/2007, 18h24
  2. Join entre 2 tables provenant de Base de donnees differentes
    Par edmotets dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 24/11/2005, 08h33
  3. comment compacter une table (base de donnees) sous delphi
    Par redhammd dans le forum Bases de données
    Réponses: 5
    Dernier message: 23/11/2005, 10h42
  4. [debutant] [XML] chaine de connection base de donnee
    Par clairenes dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 28/07/2005, 18h53
  5. [MCD]Modeliser Table externe à la base de données
    Par bossun dans le forum Schéma
    Réponses: 4
    Dernier message: 27/06/2005, 15h43

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