【问题标题】:django.urls.exceptions.NoReverseMatch: Reverse for 'board_topics' with arguments '('',)' not founddjango.urls.exceptions.NoReverseMatch:找不到带有参数“(”,)”的“board_topics”的反向
【发布时间】:2021-03-22 13:18:09
【问题描述】:

我正在努力解决这个错误,请帮助, 我为这个错误尝试了很多解决方案,但没有任何效果

views.py

from django.shortcuts import render, get_object_or_404
from django.http import HttpResponse,Http404
from .models import Board
# Create your views here.

def home(request):
    boards = Board.objects.all()
    return render(request,'home.html',{'boards':boards})

def board_topics(request,board_id):
    # try:
    #     board = Board.objects.get(pk=board_id)
    # except:
    #     raise Http404
    board = get_object_or_404(Board,pk=board_id)
    return render(request,'topics.html',{'board':board})

def new_topic(request,board_id):
    return render(request,'new_topic.html')

def about(request):
    return HttpResponse(request,'yes')

url.py

from django.urls import path
from . import views
urlpatterns = [
    path('',views.home,name='home'),
    path('about/',views.about,name='about'),
    path('boards/<int:board_id>/', views.board_topics, name='board_topics'),
    path('boards/<int:board_id>/new/', views.new_topic, name='new_topic')
]   

new_topic.html

{% extends 'base.html' %}

{% block title %} creat new topic {% endblock %}

{% block breadcrumb %}
    <li class="breadcrumb-item"> <a href="{% url 'home'%}"> Boards </a> </li> 
    <li class="breadcrumb-item"><a href="{% url 'board_topics' board.pk %}"> {{board.name}} </a> </li>
    <li class="breadcrumb-item active">New Topic</li>
{% endblock %} 

通常我可以轻松读取错误的来源并进行处理,但在这种情况下,我无法发现错误的原因,因此我无法继续学习。任何帮助将不胜感激。

【问题讨论】:

  • 您需要将{'board':board}new_topic 视图传递到模板,就像在board_topics 中一样。目前board 没有在new_topic 模板中初始化。

标签: django


【解决方案1】:

你必须告诉它board_id 是什么,因为那是你的 URL 中的内容。

 <li class="breadcrumb-item"><a href="{% url 'board_topics' board_id=board.pk %}"> {{board.name}} </a> </li>

【讨论】:

    猜你喜欢
    • 2019-07-10
    • 1970-01-01
    • 2018-12-03
    • 1970-01-01
    • 2021-11-09
    • 2021-09-07
    • 2020-12-01
    • 2021-05-18
    • 2019-09-14
    相关资源
    最近更新 更多