django - 我无法在 /events/ 错误处解决 NoReverseMatch
问题描述
添加状态为 false 的事件时出现此错误。状态为 true 时没有问题:NoReverseMatch at /events/ Reverse for 'event-detail' with arguments '('',)' not found。尝试了 1 种模式:['events/(?P<url_sistem>[^/]+)/$']
我看不到错误的原因
这是我的 views.py 文件:
from django.shortcuts import render, get_object_or_404
from .models import Event
def event_list(request):
events_f = Event.objects.filter(status=False)
events_t = Event.objects.filter(status=True)
return render(request, 'etkinlik/event_list.html', {'events_f':events_f , 'events_t':events_t})
def event_detail(request, url_sistem):
event = get_object_or_404(Event, url_sistem=url_sistem)
return render(request, 'etkinlik/event_detail.html',{'event':event})
这是 urls.py:
urlpatterns = [
path('', views.event_list, name='event_list'),
path('<str:url_sistem>/', views.event_detail, name='event-detail')
]
而这个模板文件:
{% extends 'base.html' %}
{%block title%}Events | {%endblock%}
{% block content %}
<div class="container mt-4">
<div class="jumbotron">
<h4 class="display-4">Öne Çıkarılan Etkinlik</h4>
<p class="lead mb-5">Bu etkinlik şuandaki en önemli ve popüler etkinliktir. Katılabilen herkesin katılmasını isteriz</p>
{% if not events_t %}
<h2>Şu anda öne çıkarılan yok</h2>
{% else %}
{% for event_t in events_t %}
<a href="{% url 'event-detail' event_t.url_sistem %}" style="color:black;">
<div class="card mb-3" style="max-width:700px;">
<div class="row no-gutters">
<div class="col-md-4">
<img src="/media/{{ event_t.img_event }}" class="card-img" alt="etkinlik_foto">
</div>
<div class="col-md-8">
<div class="card-body">
<h5 class="card-title">{{event_t.title}}</h5>
<p class="card-text">{{event_t.exp}}</p>
<p class="card-text"><small class="text-muted">Etkinlik Tarihi: {{event_t.event_date}}</small></p>
</div>
</div>
</div>
</div>
</a>
{% endfor %}
{% endif %}
</div>
{% for event_f in events_f %}
<a href="{% url 'event-detail' event_t.url_sistem %}" style="color:black;">
<div class="card mb-3" style="max-width:700px;">
<div class="row no-gutters">
<div class="col-md-4">
<img src="/media/{{ event_f.img_event }}" class="card-img" alt="etkinlik_foto">
</div>
<div class="col-md-8">
<div class="card-body">
<h5 class="card-title">{{event_f.title}}</h5>
<p class="card-text">{{event_f.exp}}</p>
<p class="card-text"><small class="text-muted">Etkinlik Tarihi: {{event_f.event_date}}</small></p>
</div>
</div>
</div>
</div>
</a>
{% endfor %}
</div>
{% endblock %}
提前致谢
解决方案
<a href="{% url 'event-detail' event_t.url_sistem %}" style="color:black;">
在您需要替换的网址event_t.url_sistem
中event_f.url_sistem
推荐阅读
- javascript - 为什么不能在 TypeScript 中分配 HTMLScriptElement 上的某些属性?
- python-3.x - 'extras_require' 必须是一个字典,其值是包含有效项目/版本要求说明符的字符串或字符串列表
- android - 如何在各种 API 级别上测试我的 Unity Android 项目
- javascript - 使用扩展运算符反应复制数组不起作用
- python-3.x - 使用 pythin 解析 pom.xml 文件在较旧的 python 版本中不起作用
- python - Python将数组拆分为相交的子数组
- php - 我如何使用每个循环从命名数组返回信息。WordPress-插件
- html - Html 元素不会在元素值本身内破坏页面,这会导致几个半空页面
- kotlin-multiplatform - 如何处理 kotlin 多平台数据类中的注释?
- ssl - 每个 SolrCloud 节点都应该有自己的 ssl 证书吗?