错误:NoReverseMatch at/(在修改代码以包含引导之后)

2024-10-02 08:30:30 发布

您现在位置:Python中文网/ 问答频道 /正文

作为一个概述,我正在做这个网站,用户可以建立一个帐户,在线记录笔记,并存储在他们的帐户。在

我的文件夹目录如下:

site1
-> mynotes
-> users
-> mynotess

mynotes是主项目目录,而usersmynotes双s)都是应用程序(很抱歉命名错误,但现在更改它已经太迟了)。在

我有一个NoReverseMatch at/error。 它还说:

^{pr2}$

以下是命令提示符下的回溯:

Traceback (most recent call last):
  File "C:\Python34\lib\site-packages\django\core\handlers\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\Python34\lib\site-packages\django\core\handlers\base.py", line 187, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "C:\Python34\lib\site-packages\django\core\handlers\base.py", line 185, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "C:\Users\Steven\site1\mynotess\views.py", line 15, in index
    return render(request, 'mynotess/index.html') 
  File "C:\Python34\lib\site-packages\django\shortcuts.py", line 30, in render
    content = loader.render_to_string(template_name, context, request, using=using)
  File "C:\Python34\lib\site-packages\django\template\loader.py", line 68, in render_to_string
    return template.render(context, request)
  File "C:\Python34\lib\site-packages\django\template\backends\django.py", line 66, in render
    return self.template.render(context)
  File "C:\Python34\lib\site-packages\django\template\base.py", line 208, in render
    return self._render(context)
  File "C:\Python34\lib\site-packages\django\template\base.py", line 199, in _render
    return self.nodelist.render(context)
  File "C:\Python34\lib\site-packages\django\template\base.py", line 994, in render
    bit = node.render_annotated(context)
  File "C:\Python34\lib\site-packages\django\template\base.py", line 961, in render_annotated
    return self.render(context)
  File "C:\Python34\lib\site-packages\django\template\loader_tags.py", line 174, in render
    return compiled_parent._render(context)
  File "C:\Python34\lib\site-packages\django\template\base.py", line 199, in _render
    return self.nodelist.render(context)
  File "C:\Python34\lib\site-packages\django\template\base.py", line 994, in render
    bit = node.render_annotated(context)
  File "C:\Python34\lib\site-packages\django\template\base.py", line 961, in render_annotated
    return self.render(context)
  File "C:\Python34\lib\site-packages\django\template\defaulttags.py", line 439, in render
    url = reverse(view_name, args=args, kwargs=kwargs, current_app=current_app)
  File "C:\Python34\lib\site-packages\django\urls\base.py", line 91, in reverse
    return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs)))
  File "C:\Python34\lib\site-packages\django\urls\resolvers.py", line 392, in _reverse_with_prefix
    (lookup_view_s, args, kwargs, len(patterns), patterns)
django.urls.exceptions.NoReverseMatch: Reverse for ' index' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

它突出了这条线,但我看不出它有什么问题:

return render(request, 'mynotess/index.html') 

问题是,我最近开始使用Bootstrap3(我已经下载并包含在已安装的应用程序中,并且在中设置了“include\u jquery”为True)来设计网站的样式设置.py)在

在修改我的代码(在模板HTML文档中)来设计我的网站之前,一切都很好,没有错误。但当我修改我的基本.html以及索引.html,我得到了这个错误,我甚至没有在中修改代码视图.py. 在

基本.html

{% load bootstrap3 %}

<!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">
        <title>My Notes</title
        {% bootstrap_css %}
        {% bootstrap_javascript %}
    </head>
    <body>
        <!-- Static top navbar -->
        <nav class="navbar navbar-default navbar-static-top">
            <div class="container">
                <div class = "navbar-header">
                    <button type="button" class="navbar-toggle collapsed" aria-expanded="false"
                    aria-controls="navbar"></button>
                    <a class="navbar-brand" href="{% url 'mynotess: index' %}">My Notes</a>
                </div>
                <div id="navbar" class="navbar-collapse collapse">
                    <ul class="nav navbar-nav">
                        <li><a href="{% url 'mynotess:topics' %}">Topics</a></li>
                    </ul>
                    <ul class="nav navbar-nav navbar-right">
                        {% if user.is_authenticated %}
                            <li><a>{{user.username}}</a></li>
                            <li><a href="{% url 'users:logout' %}">Log Out</a></li>
                        {% else %}
                            <li><a href = "{% url 'users:login' %}">Login</a></li>
                            <li><a href = "{% url 'users:register' %}">Create Account</a></li>
                        {% endif %}
                    </ul>
                </div>
            </div>
        </nav>
        <div class="container">
            <div class="page-header">
                {% block header %}{% endblock header %}
            </div>
            <div>
                {% block content %}{% endblock content %}
            </div>
        </div>
    </body>
</html>

索引.html

{% extends "mynotess/base.html" %}

{% block header %}
    <div class='jumbotron'>
        <h1>Big Title here</h1>
    </div>
{% endblock header %}

{% block content %}
    {% if user.is_authenticated %}
        <h2>
            Welcome!
        </h2>
    {% else %}
        <h2>
            Create a new account<a href="{% url 'users:register' %}">here</a>
        </h2>
    {% endif %}
{% endblock content %}

网址.py(来自主项目目录mynotes

from django.conf.urls import include, url
from django.contrib import admin


urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^users/', include('users.urls', namespace='users')),
    url(r'', include('mynotess.urls', namespace= "mynotess")), #telling it to look into the urls.py in mynotess for more URLS!
]

网址.py来自mynotess目录(app)

urlpatterns = [
    #homepage
    url(r'^$', views.index, name = 'index'),
    #topics page
    url(r'^topics/$', views.topics, name = 'topics'),
    #each topic -> e.g. topics/34
    url(r'^topics/(?P<topicID>\d+)/$', views.topic, name = 'topic'),
    #'make a new topic' page
    url(r'^new_topic/$', views.new_topic, name='new_topic'),
    #'make a new entry' page
    url(r'^new_entry/(?P<topicID>\d+)/$', views.new_entry, name = 'new_entry'),
    #edit entry page
    url(r'^edit_entry/(?P<entryID>\d+)/$', views.edit_entry, name = 'edit_entry'),
]

视图.pymynotess(app)目录中

from django.shortcuts import render
from django.http import HttpResponseRedirect, Http404
from django.core.urlresolvers import reverse
from .models import Topic, Entry
from .forms import TopicForm, EntryForm
from django.contrib.auth.decorators import login_required

def index(request):
    #homepage for MyNotes
    return render(request, 'mynotess/index.html') 

(…以及所有其他视图函数)

任何形式的帮助或建议都将不胜感激!在


Tags: djangoinpydivurllibpackagesline

热门问题