Реверс для 'author' с аргументами '('',)' не найден. Проверен 1 шаблон(ы): ['blogapp/author/(?P<pk>[^/]+)/\\\Z'

при выполнении http://127.0.0.1:8000/blogapp/blog/ , в django 4.0, я получил ошибку reverse for... not found and

эта ошибка возникает, когда я добавляю (post.author.id) в href, который находится в шаблоне, упомянутом в строке 15 если нужна дополнительная информация, пожалуйста, прокомментируйте ниже

views.py
    

def authorview(request,pk):
        user=User.objects.get(id=pk)
        return render(request,'blogapp/authorview.html',{'user':user})
      

templates
. В шаблоне C:\Users\SHAFQUET NAGHMI\blog\blogapp\templates\blogapp\blogretrieve.html, ошибка в строке 15

    {% load static %}
    {% block content %}
    
    <h1>Blog </h1>
    <link rel="stylesheet" href="{% static 'blogapp/blogretrieve.css' %}">
    <!-- Latest compiled and minified CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
    
    
    {% for post in q %}
    <div class="jumbotron jumbotron-fluid">
        <div class="container">
          <h2 class="display-1">{{post.title}} </h2><br>
          <p class="display-2">{{post.Newpost}}</p>
          <a href="{% url 'blogapp:author' post.author.id %}">{{post.author}}</a    <!-- line 15 -->
          <small class="display-3">{{post.created_date}}</small>
    
          
        </div>
      </div>
    {% endfor %}
    
   urls.py   
    

app_name='blogapp'
    urlpatterns=[
        path('',views.home,name='home'),
        path('createblog/',views.blogview,name='blogview'),
        path('blog/',views.blogretrieve,name='blog'),
        path('signup/',views.signupview,name='signup'),
        path('login/',views.loginview,name='login'),
        path('logout/',views.logoutview,name='logout'),
        path('author/<str:pk>/',views.authorview,name='author'),
]

поделитесь своими models.py и urls.py

Ошибка означает, что post.author.id пуст в

{% url 'blogapp:author' post.author.id %}

Поскольку вы не публикуете связанное представление, невозможно сказать, почему оно пустое. Вы выполняете цикл через "q", поэтому q должен быть в вашем контексте и содержать посты. Таким образом, либо ваш список q пуст, либо у одного из содержащихся в нем постов нет автора.

ошибка произошла потому, что вы передаете None значение в качестве параметра.

EX : {% url 'blogapp:author' post.author.id %}

проверьте значение: post.author.id

Вернуться на верх