Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Django] Assigner une ForeignKey avant de save

Anonyme
    28 février 2016 à 16:45:58

    Bonjour,

    je fais appel à vous aprés des recherches sur google qui n'ont pas donné de résultat

    Je voudrais modifier un attribut ForeignKey avant d'enregistrer mon modéle :

    class Comment(models.Model):
        """ Modèle pour les commentaires """
        pseudo = models.CharField(max_length=60)
        email = models.EmailField(max_length=100)
        contenu = models.TextField()
    
        is_visible = models.BooleanField(verbose_name="Commentaire visible ?",
                                         default=True)
        article = models.ForeignKey("Article", null=True)
        date = models.DateTimeField(verbose_name="Date de publication",
                                    auto_now_add=True, auto_now=False)
    
        def __str__(self):
            return self.contenu

    et dans ma view.py :

    if request.method == "POST":
    
            form = CommentForm(request.POST)
    
            if form.is_valid():
                form.article = Article.objects.get(slug=article.slug)
                form.save()
                form = CommentForm()
                envoye = True

    Comme vous pouvez le voir, j'essai de modifier l'attribut "article"

    Au départ j'avais mis form.article = article, sauf que ça ne fonctionnait pas. J'ai vu sur des forum des personnes qui ont dit de mettre "Article.objects.get(slug=article.slug)" sauf que ça ne marche toujours pas

    Merci pour votre aide

    • Partager sur Facebook
    • Partager sur Twitter

    [Django] Assigner une ForeignKey avant de save

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown