【发布时间】:2018-03-28 16:48:54
【问题描述】:
我是python和Django的新手,使用win10系统。
Django 版本:1.9.4。和 Python 版本:3.6.3。
在模板 D:\Music\music\templates\music\index.html 中,第 29 行出错
19 <div class="caption">
20 <h2>{{ album.album_title }}</h2>
21 <h4>{{ album.artist }}</h4>
22
23 <!-- View Details -->
24 <a href="{% url 'detail' album.id %}" class="btn btn-primary btn-sm" role="button">View Details</a>
25
26 <!-- Delete Album -->
27 <form action="{% url 'delete_album' album.id %}" method="post" style="display: inline;"> Traceback:
File "D:\Python\lib\site-packages\django\template\defaulttags.py" in render
507. current_app=current_app)
File "D:\Python\lib\site-packages\django\core\urlresolvers.py" in reverse
600. return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs)))
File "D:\Python\lib\site-packages\django\core\urlresolvers.py" in _reverse_with_prefix
508. (lookup_view_s, args, kwargs, len(patterns), patterns))
During handling of the above exception (Reverse for 'website.index' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []), another exception occurred:
File "D:\Python\lib\site-packages\django\core\handlers\base.py" in get_response
149. response = self.process_exception_by_middleware(e, request)
File "D:\Python\lib\site-packages\django\core\handlers\base.py" in get_response
147. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "D:\Music\music\views.py" in index
145. return render(request, 'music/index.html', {'albums': albums})
File "D:\Python\lib\site-packages\django\shortcuts.py" in render
67. template_name, context, request=request, using=using)
File "D:\Python\lib\site-packages\django\template\loader.py" in render_to_string
97. return template.render(context, request)
File "D:\Python\lib\site-packages\django\template\backends\django.py" in render
95. return self.template.render(context)
File "D:\Python\lib\site-packages\django\template\base.py" in render
206. return self._render(context)
File "D:\Python\lib\site-packages\django\template\base.py" in _render
197. return self.nodelist.render(context)
File "D:\Python\lib\site-packages\django\template\base.py" in render
992. bit = node.render_annotated(context)
File "D:\Python\lib\site-packages\django\template\base.py" in render_annotated
959. return self.render(context)
File "D:\Python\lib\site-packages\django\template\loader_tags.py" in render
173. return compiled_parent._render(context)
File "D:\Python\lib\site-packages\django\template\base.py" in _render
197. return self.nodelist.render(context)
File "D:\Python\lib\site-packages\django\template\base.py" in render
992. bit = node.render_annotated(context)
File "D:\Python\lib\site-packages\django\template\base.py" in render_annotated
959. return self.render(context)
File "D:\Python\lib\site-packages\django\template\defaulttags.py" in render
513. six.reraise(*exc_info)
File "D:\Python\lib\site-packages\django\utils\six.py" in reraise
686. raise value
File "D:\Python\lib\site-packages\django\template\defaulttags.py" in render
499. url = reverse(view_name, args=args, kwargs=kwargs, current_app=current_app)
File "D:\Python\lib\site-packages\django\core\urlresolvers.py" in reverse
600. return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs)))
File "D:\Python\lib\site-packages\django\core\urlresolvers.py" in _reverse_with_prefix
508. (lookup_view_s, args, kwargs, len(patterns), patterns))
Exception Type: NoReverseMatch at /
Exception Value: Reverse for 'index' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []
28 {% csrf_token %}
29 <input type="hidden" name="album_id" value="{{ album.id }}" />
30 <button type="submit" class="btn btn-default btn-sm">
31 <span class="glyphicon glyphicon-trash"></span>
32 </button>
33 </form>
34
35 <!-- Favorite Album -->
36 <a href="{% url 'favorite_album' album.id %}" class="btn btn-default btn-sm btn-favorite" role="button">
37 <span class="glyphicon glyphicon-star {% if album.is_favorite %}active{% endif %}"></span>
38 </a>
这是错误回溯:
渲染中的文件“D:\Python\lib\site-packages\django\template\defaulttags.py” 507. current_app=current_app)
文件 "D:\Python\lib\site-packages\django\core\urlresolvers.py" 反向 600. return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs))))
_reverse_with_prefix 中的文件“D:\Python\lib\site-packages\django\core\urlresolvers.py” 508.(lookup_view_s、args、kwargs、len(模式)、模式))
在处理上述异常期间(未找到带有参数“()”和关键字参数“{}”的“website.index”的反向操作。尝试了 0 个模式:[]),发生了另一个异常:
get_response 中的文件“D:\Python\lib\site-packages\django\core\handlers\base.py” 149. response = self.process_exception_by_middleware(e, request)
get_response 中的文件“D:\Python\lib\site-packages\django\core\handlers\base.py” 147. response = Wrapped_callback(request, *callback_args, **callback_kwargs)
索引中的文件“D:\Music\music\views.py” 145. return render(request, 'music/index.html', {'albums': albums})
渲染中的文件“D:\Python\lib\site-packages\django\shortcuts.py” 67. template_name, context, request=request, using=using)
render_to_string 中的文件“D:\Python\lib\site-packages\django\template\loader.py” 97. return template.render(context, request)
渲染中的文件“D:\Python\lib\site-packages\django\template\backends\django.py” 95. return self.template.render(context)
渲染中的文件“D:\Python\lib\site-packages\django\template\base.py” 206. return self._render(context)
_render 中的文件“D:\Python\lib\site-packages\django\template\base.py” 197. return self.nodelist.render(context)
渲染中的文件“D:\Python\lib\site-packages\django\template\base.py” 992. bit = node.render_annotated(context)
render_annotated 中的文件“D:\Python\lib\site-packages\django\template\base.py” 959. return self.render(context)
渲染中的文件“D:\Python\lib\site-packages\django\template\loader_tags.py” 173. 返回已编译的_parent._render(context)
_render 中的文件“D:\Python\lib\site-packages\django\template\base.py” 197. return self.nodelist.render(context)
渲染中的文件“D:\Python\lib\site-packages\django\template\base.py” 992. bit = node.render_annotated(context)
render_annotated 中的文件“D:\Python\lib\site-packages\django\template\base.py” 959. return self.render(context)
渲染中的文件“D:\Python\lib\site-packages\django\template\defaulttags.py” 513. 六.reraise(*exc_info)
文件 "D:\Python\lib\site-packages\django\utils\six.py" 在 reraise 686.提升价值
渲染中的文件“D:\Python\lib\site-packages\django\template\defaulttags.py” 499. url = reverse(view_name, args=args, kwargs=kwargs, current_app=current_app)
文件 "D:\Python\lib\site-packages\django\core\urlresolvers.py" 反向 600. return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs))))
_reverse_with_prefix 中的文件“D:\Python\lib\site-packages\django\core\urlresolvers.py” 508.(lookup_view_s、args、kwargs、len(模式)、模式))
异常类型:NoReverseMatch at /
异常值:未找到带有参数“()”和关键字参数“{}”的“索引”的反向。尝试了 0 个模式:[]
这是我的音乐\urls.py:
from django.conf.urls import url
from . import views
app_name = 'music'
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^register/$', views.register, name='register'),
url(r'^login_user/$', views.login_user, name='login_user'),
url(r'^logout_user/$', views.logout_user, name='logout_user'),
url(r'^(?P<album_id>[0-9]+)/$', views.detail, name='detail'),
url(r'^(?P<song_id>[0-9]+)/favorite/$', views.favorite, name='favorite'),
url(r'^songs/(?P<filter_by>[a-zA_Z]+)/$', views.songs, name='songs'),
url(r'^create_album/$', views.create_album, name='create_album'),
url(r'^(?P<album_id>[0-9]+)/create_song/$', views.create_song, name='create_song'),
url(r'^(?P<album_id>[0-9]+)/delete_song/(?P<song_id>[0-9]+)/$', views.delete_song, name='delete_song'),
url(r'^(?P<album_id>[0-9]+)/favorite_album/$', views.favorite_album, name='favorite_album'),
url(r'^(?P<album_id>[0-9]+)/delete_album/$', views.delete_album, name='delete_album'),
]
urls.py:
from django.conf.urls import include, url
from django.contrib import admin
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^music/', include('music.urls'),),
url(r'^', include('music.urls')),
]
if settings.DEBUG:
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
如何解决这个问题?
【问题讨论】:
-
你能粘贴错误回溯吗?目前尚不清楚通话发生在哪里。
-
你能解释一下最后两个 urlpatterns 是怎么回事吗?为什么
r'^music/'和r'^'都使用include('music.urls')?这并不是完全错误,只是看起来很奇怪/可能是多余的 -
@SandeepBalagopal 感谢您的帮助,我已经粘贴了错误回溯。
-
我是 python 和 Django 的新手,请按照 Youtube tourial... 我应该删除其中一个吗? @ubadub
标签: python django python-3.x