Hello all,

J'ai un blog sous Django qui me permet d'afficher une liste d'articles et d'en ouvrir un. Je cherche à ajouter un système de commentaire. J'ai créé une autre app, un model, view mais impossible de faire en sorte d'afficher les commentaires d'un article sous cet article.

Voici le urls.py du projet :

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('articles.urls'), name="homepage"),
    path('comments/', include('comments.urls'), name="comments"),
    path('__debug__/', include('debug_toolbar.urls')),
]

Le urls.py de l'application Articles :

app_name = "articles"

urlpatterns = [
    path('', BlogHome.as_view(), name="home"),
    path('edit/<str:slug>/', BlogArticleEdit.as_view(), name="edit"),
    path('<str:slug>/', BlogArticleDetail.as_view(), name="article"),
    path('delete/<str:slug>/', BlogArticleDelete.as_view(), name="delete"),
]

Le url.py de l'application Commentaires :

app_name = "comments"

urlpatterns = [
    path('', DisplayComment.as_view(), name="commentaire-article"),
]

Le comments/views.py :

class DisplayComment(ListView):
    model = Commentaire

    def get_context_data(self, *, object_list=None, **kwargs):
        context = super().get_context_data(**kwargs)
        context['now'] = timezone.now()
        return context

J'inclus le template qui est destiné à recevoir les commentaires grâce à ce code dans mon template où l'article détaillé s'affiche bien :

{% include 'comments/commentaire-article.html' %}

Et le template avec juste le content pour essayer :

<h1>{{commentaire.content}}</h1>

Mais évidemment, rien ne s'affiche. Donc en fait j'ai deux apps différentes, avec deux modèles différents et j'aimerais les lier entre eux...

Déjà j'aimerais afficher l'article + les commentaires dessous. Mais j'ai du louper qq chose...

Merci !

Aucune réponse