Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 页面未找到错误/url未与pk一起使用_Django - Fatal编程技术网

Django 页面未找到错误/url未与pk一起使用

Django 页面未找到错误/url未与pk一起使用,django,Django,我正在当地图书馆的MDN项目中学习Django。 我的两个页面正在呈现,而书籍详细信息页面未呈现,并且未找到给定错误页面。如果我遗漏了什么,请告知: 到目前为止,整个项目都在MDN文档上 catalog/url.py from django.urls import path from catalog import views app_name = 'catalog' urlpatterns = [ path('', views.index, name='index'), p

我正在当地图书馆的MDN项目中学习Django。 我的两个页面正在呈现,而书籍详细信息页面未呈现,并且未找到给定错误页面。如果我遗漏了什么,请告知:

到目前为止,整个项目都在MDN文档上

catalog/url.py

from django.urls import path

from catalog import views

app_name = 'catalog'

urlpatterns = [
    path('', views.index, name='index'),
    path('books/', views.BookListView.as_view(), name='books'),
    path('book/<int:pk>', views.BookDetailView.as_view(), name='book-detail'),
]
从django.url导入路径
从目录导入视图
应用程序名称='目录'
URL模式=[
路径(“”,views.index,name='index'),
路径('books/',views.BookListView.as_view(),name='books'),
路径('book/',views.BookDetailView.as_view(),name='book-detail'),
]
catalog/templates/catalog/book_detail.html

{% extends 'catalog/base.html' %}
{% block content %}

    <h1>Title: {{ book.title }}</h1>

    <p><strong>Author:</strong> <a href="{{ book.author.get_absolute_url }}">{{ book.author }}</a></p>
    <p><strong>Summary:</strong> {{ book.summary }}</p>
    <p><strong>ISBN:</strong> {{ book.isbn }}</p> 
    <p><strong>Language:</strong> {{ book.language }}</p>  
    <p><strong>Genre:</strong> {{ book.genre.all|join:", " }}</p>

    <div style="margin-left:20px;margin-top:20px">
        <h4>Copies</h4>

    {% for copy in book.bookinstance_set.all %}
        <hr>
        <p class="{% if copy.status == 'a' %}text-success{% elif copy.status == 'd' %}text-danger{% else %}text-warning{% endif %}">{{ copy.get_status_display }}</p>
    {% if copy.status != 'a' %}<p><strong>Due to be returned:</strong> {{copy.due_back}}</p>{% endif %}
    <p><strong>Imprint:</strong> {{copy.imprint}}</p>
    <p class="text-muted"><strong>Id:</strong> {{copy.id}}</p>

    {% endfor %}
    </div>
{% endblock %}
{%extends'目录/base.html%}
{%block content%}
标题:{{book.Title}
作者:

摘要:{{book.Summary}

ISBN:{{book.ISBN}}

语言:{{book.Language}}

流派:{{book.Genre.all |加入:“,”}

副本 {book.bookinstance_set.all%}中的副本为%

{{copy.get_status_display}

{%if copy.status!='a'%}到期返回:{{copy.Due\u back}

{%endif%} 压印:{{copy.Imprint}

Id:{{copy.Id}

{%endfor%} {%endblock%}
catalog/templates/catalog/base.html

{% load static %}
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link rel="stylesheet" href="{% static 'catalog/style.css' %}">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-wEmeIV1mKuiNpC+IOBjI7aAzPcEZeedi5yW5f2yOq55WWLwNGmvvx4Um1vskeMj0" crossorigin="anonymous"/>
    {% block title %}
    <title></title>
    {% endblock %}
  </head>
  <body>
    <header>
      <div class="container-fluid">
        <div class="row">
          <div class="col-sm-2">
            {% block sidebar %}
              <ul class="sidebar-nav list-inline1 p-2">
                <li class="list-inline-item1"><a href="{% url 'catalog:index' %}">Home</a></li>
                <li class="list-inline-item1"><a href="{% url 'catalog:books' %}">All books</a></li>
                <li class="list-inline-item1"><a href="">All authors</a></li>
              </ul>
            {% endblock %}
          </div>  
        </div>    
      </div>
    </header>
    <div class="container-fluid">
      <div class="row">
        <div class="col-md-10">
          {% block content %}

          {% endblock %}
        </div>
      </div>
    </div>
    <!-- Optional JavaScript; choose one of the two! -->

    <!-- Option 1: Bootstrap Bundle with Popper -->
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-p34f1UUtsS3wqzfto5wAAmdvj+osOnFyQFpp4Ua3gs/ZVWx6oOypYoCJhGGScy+8" crossorigin="anonymous"></script>

    
  </body>
</html>
{%load static%}
{%block title%}
{%endblock%}
{%块边栏%}
{%endblock%} {%block content%} {%endblock%}
好吧,如果你说“页面未找到pk”,至少在views.py中提供你的
BookDetailView类
。亲爱的Mas,请查找如下
class BookDetailView(generic.DetailView):model=Book
如果未更改
Book
model的
主键,则找不到URL和视图的任何问题。。。你说你的列表视图工作正常,这意味着URL是正确的。。然后,
/{PATH_TO_APP}/book/3/
将起作用。如果存在pk=3Hi Mas的book对象,我尝试了上述解决方案,但仍然存在相同的错误。找不到第404页。