Home > Blockchain >  Getting no reverse match at /post in django
Getting no reverse match at /post in django

Time:10-01

I have been facing this issue. And I have a url name post-page-detail but then also getting error please See the error screenshot below. error screen shot

My html page

<a href="{% url "post-detail-page" slug=post.slug %}">
    <h2>{{post.tractor_company}} || {{post.tractor_model}}</h2>
<pre><h5>{{post.implimentaion}}</h5>
{{post.farmer}}
Uplode Date : {{post.date}}</pre>
</a>
</div>

URLs.py

from . import views
urlpatterns = [
    path("",views.starting_page,name = "starting-page"),
    path("posts",views.posts,name = "post-page"),
    path("posts/<slug:slug>",views.post_detail,name="post-detail-page"),
]

View.py

from django import forms
from django.contrib.auth.models import User
from django.shortcuts import render, redirect ,get_object_or_404
from .models import Post, Farmer
# Create your views here.
from django.http import HttpResponseRedirect 
# Create your views here.
def starting_page(request):
    return render(request,"tractor/index.html")

def posts(request):
    qs = Post.objects.all()  
    context = {"posts":qs}
    return render(request,"tractor/all-post.html",context)
    
def add_post(request):
    pass


def post_detail(request,slug):
    indentified_post = get_object_or_404(Post,slug=slug)
    return render(request,"blog/post-detail.html",{'post':indentified_post})```

CodePudding user response:

Try this:

{% url 'post-detail-page' post.slug as post_detail_url %}
<a href="{{ post_detail_url }}">

Let me know if it worked.

CodePudding user response:

change this

<div class="card shadow1">
<a href="{% url 'post-detail-page' slug=post.slug %}">
    <h2>{{post.tractor_company}} || {{post.tractor_model}}</h2>
<pre><h5>{{post.implimentaion}}</h5>
{{post.farmer}}
Uplode Date : {{post.date}}</pre>

</div></a>

to

{% for post in posts %}
<div class="card shadow1">
<a href="{% url 'post-detail-page' post.slug %}">
    <h2>{{post.tractor_company}} || {{post.tractor_model}}</h2></a>
<pre><h5>{{post.implimentaion}}</h5>
{{post.farmer}}
Uplode Date : {{post.date}}</pre>

</div>
{% endfor %}

let me know if it works.

  • Related