Résolue

Django : ma page 'create_movement' ne s'affiche pas

# Affichage # Django

Jean-Philippe MOLL HEGER

Salut
Ma page ( create_movement) ne s'affiche pas et cela ne pète pas non plus.
urls.py du projet webjeanfi:

views.py de l'app budget:

template create.movement.html dans budget/templates/budget
et au cas où le model Movement de l'app budget dans Models.py

Merci d'avance !

Jean-Philippe MOLL HEGER

le template que j'ai oublié de joindre

Thibault houdon

Mentor

Salut Jean-Philippe !

Je vois que dans ta vue, tu ne retourne le HTML que dans le cas d'une requête POST. Sinon, tu fais un redirect vers la page d'index.

Quand tu accèdes à l'URL du coup ça te rediriges directement vers la page d'index, vu que pour accéder à ta vue avec une requête POST, il faudrait soumettre le formulaire.

Jean-Philippe MOLL HEGER

Merci Thibault
Pour le moment j'ai modifié comme cela et du coup, en effet, le formulaire apparait.
Maintenant je vais essayer de comprendre pourquoi il n'accepte pas ma saisie. A+

Bonjour Jean-Philippe,

que veux tu dire par "il n'accepte pas ma saisie" ? Tu as un message d'erreur ?

Jean-Philippe MOLL HEGER

Salut P-A
Oui mais j'ai un début de réponse.
Mon form me permet de créer une instance de la class Movement qui a dans ces attributs des instances d'autres classes (ForeignKey) BudgetReal, Category, SubCategory, Period.
En fait dans mon formulaire je mets par exemple le nom de l'instance ... et non l'id je suppose
Ma class BudgetReal : j'ai créé 2 instances : Budget et Real mais ce sont leur attribut name en fait que je veux.
Exemple de l'instance Real

l'erreur /

Je suis pas sûr d'être clair :-)

Salut Jean-Philippe,

Ah oui je crois comprendre ce que tu veux dire:

Dans ta vue ici:

budget_or_real = request. POST get ("budget_or_real") tu essayes de récupérer un objet budget_or_real en voulant récupérer celui que tu auras mis dans ton formularaire . C'est bien ça ?

Si je ne m'abuse, Django ne sait pas trouver cet objet par son nom, il faut que tu récupères l'ID de la foreign key que tu veux récupérer. Pour cela tu dois utiliser un select dans ton formulaire qui te permettra de choisir ta foreign key dans une liste.

J'espère que c'est un peu plus clair pour toi ?

Jean-Philippe MOLL HEGER

Oui merci c'est ça
je re-regarde la partie formulaire de django pour refaire mon code car cela ne fonctionne pas ce que j'ai coder.

Inscris-toi

(c'est gratuit !)

Inscris-toi

Tu dois créer un compte pour participer aux discussions.

Créer un compte

Rechercher sur le site

Formulaire de contact

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.