Je suis débutant sur Django.Transmettre plusieurs objets aux modèles avec rendu
J'ai un projet avec les modèles suivants:
Mes articles modèles:
class Post(models.Model):
title = models.CharField(max_length=200)
slug = models.SlugField(max_length=160)
content = models.TextField()
image = models.ImageField(upload_to=upload_location)
timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)
updated = models.DateTimeField(auto_now=True, auto_now_add=False)
categorie = models.CharField(max_length=200)
categorie = models.ForeignKey('categorie.Categorie')
publier = models.BooleanField()
Mon portefeuille catégories de modèles qui est lié à mon article Modèle:
class Categorieport(models.Model):
title = models.CharField(max_length=200)
article = models.OneToOneField('posts.Post')
Et enfin, mes modèles de portefeuille avec toutes les photos:
class Portfolio(models.Model):
title = models.CharField(max_length=200)
image = models.ImageField(upload_to=upload_location)
timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)
updated = models.DateTimeField(auto_now=True, auto_now_add=False)
categorieportfolio = models.ForeignKey('Categorieport')
Dans une vue et un modèle, je voudrais afficher des informations concernant l'article et le portefeuille lié à l'article.
j'ai écrit la vue suivante:
def portfolio(request, article=None):
portfolio = get_object_or_404(Categorieport, article=article)
image_portfolio = portfolio.portfolio_set.all()
return render(request, 'portfolio1.html', {'portfolio': portfolio, 'image_portfolio': image_portfolio})
Et les modèles suivants:
<div class="titre-display">
<h2>{{ portfolio.article.timestamp|date:"d E Y" }}/{{ portfolio.article.categorie}} </h2>
<h1>{{ portfolio.article.title}}</h1>
</div>
<div class="content-display">
<div class="content-display-main">
<div class="content-display-main-portfolio">
<div class="image-portfolio">
<a class="example-image-link" href="{{ image_portfolio.image.url }}" data-lightbox="example-set" data-title="{{image_portfolio.title}}">
</a>
je peux accéder à l'information de mon article, mais je ne peux pas accéder aux informations de mon portefeuille. Je l'ai essayé avec le shell, et ça marche. Je n'arrive pas à comprendre pourquoi cela ne marche pas dans mon point de vue et mon modèle.
Avez-vous une idée?
Nous vous remercions à l'avance
Singertwist
S'il vous plaît formater votre code correctement. Ce n'est pas agréable à lire. En outre, examinez les vues basées sur les classes en général et la méthode 'get_context_data' en particulier. – creimers