当前位置: 首页 > 面试题库 >

在网址格式中使用include()时出现意外的NoReverseMatch错误

督德泽
2023-03-14
问题内容

引用时,我得到一个错误detail.htmlindex.html

Reverse for 'detail' with arguments '(3,)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['$(?P<pk>[0-9]+)/$']

views.py

def rock_and_feat(request):
    feats = Feat.objects.order_by('-created')[:3]
    rocks = Rockinfo.objects.order_by('-rank')[:50]
    context = RequestContext(request, {
        'feats': feats, 'rocks': rocks
    })
    return render_to_response('template.html', context)


class DetailView(generic.DetailView):
    model = Feat
    template_name = 'feature/detail.html' 
    context_object_name = 'feat'

urls.py

urlpatterns = [
    url(r'^$', views.rock_and_feat, name='rock_and_feat'),
    url(r'^(?P<pk>[0-9]+)/$', views.DetailView.as_view(), name='detail'),
]

index.html

{% extends "index.html" %}
{% block mainmast %}
<div id="wrapper">
{% if feats %}
{% for feat in feats %}
 <div class="specialsticky">
 <a href="{% url 'feature:detail' feat.id %}"><img src="{{ feat.image.url }}" alt="some text"></a>
  <h1 class="mast-header">
    <a href="#">{{feat.title}}</a>
  </h1>
 </div>

 {% endfor %}
 {% else %}
<p>No </p>
 {% endif %}
</div>
{% endblock %}

detail.html

{% extends "index.html" %}

<iframe width="560" height="345" src="{{ feat.youtube_link }}"       frameborder="0" allowfullscreen></iframe>

项目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'^$', include('feature.urls', namespace="feature")),
    url(r'^admin/', include(admin.site.urls)),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

在将<a href= 中的图片添加到之前,该应用程序运行良好index.html

无法找出问题所在。


问题答案:

这表明存在问题。

'$(?P<pk>[0-9]+)/$'

模式的开头不应有美​​元符号(与字符串的末尾匹配)。

该问题是由您包含urls.py的方式引起的。您目前在正则表达式中有一个美元:

url(r'^$', include('feature.urls', namespace="feature")),

要解决此问题,请从正则表达式中删除美元。

url(r'^', include('feature.urls', namespace="feature")),


 类似资料:
  • 这里我有一个表单的html代码。创建事件的表单。它要求用户提供一些信息,然后他必须按下创建按钮。 这里是我的表单的java代码。 我不知道为什么按下按钮后,它会给我一个错误,比如: 白标签错误页。此应用程序没有/Error的显式映射,因此您将其视为回退。 Tue Dec 29 00:24:57 EET 2020有一个意外错误(type=For的,状态=403)。禁止。 配置类

  • 问题内容: 我正在尝试使用启动多个docker容器,但出现以下(部分)错误消息: 按照https://github.com/docker/docker/issues/8714的建议,我尝试了命令 导致 但是,我在这里看不到任何可以杀死的进程ID。任何想法是什么导致此错误? 问题答案: 以下https://unix.stackexchange.com/questions/106561/finding

  • 当我将活动更改为横向模式时,我遇到了一些意外的服务泄漏错误。应用程序运行良好,错误仅显示在logcat中。 logcat错误为: E/ActivityThread(16640):活动com。亚马逊。hsyal。用户界面。VoltageSODLoggerActivity已泄漏ServiceConnection com。亚马逊。hsyal。用户界面。电压对数活性$1@41461908最初是绑定在这里的

  • 我使用画布创建了这幅画,但在这样做之后,由于某种原因,我讨厌地在最左边的红色矩形之间出现一条黑线

  • 因此,我尝试使用coinbase API。我正在尝试一个简单的测试,看看我是否可以让它工作,但我得到了各种作曲家的错误。 目前,我得到意外的t'use'为这个代码: 那么,我的使用声明在错误的地方吗?我在索引函数和类之外尝试过它们。两者产生的结果与此完全不同。 在Keks班之外,我得到了 致命错误:在第15行的/home/content/61/11420661/html/beta/applicat