django slug问题noreversematch

django slug问题noreversematch,django,Django,我是django的新手,我不需要什么帮助来解决这个问题。我收到错误NoReverseMatch django.urls.exceptions.NoReverseMatch: Reverse for 'blog_details' with keyword arguments '{'slug': 'Cybercrime-Could-Cost-the-World-$10.5-Trillion-Annually-by-2025-aee2db6e-29ca-4ff9-94e8-09d8656905f3'}

我是django的新手,我不需要什么帮助来解决这个问题。我收到错误NoReverseMatch

django.urls.exceptions.NoReverseMatch: Reverse for 'blog_details' with keyword arguments '{'slug': 'Cybercrime-Could-Cost-the-World-$10.5-Trillion-Annually-by-2025-aee2db6e-29ca-4ff9-94e8-09d8656905f3'}' not 
found. 1 pattern(s) tried: ['blog/details/(?P<slug>[-a-zA-Z0-9_]+)$']
url.py

urlpatterns = [
    path('', views.BlogList.as_view(), name = 'blog_list'),
    path('write/', views.CreateBlog.as_view(), name = 'create_blog'),
    path('details/<slug:slug>', views.blog_details, name = 'blog_details'),
]

这将不起作用,因为您的“slug”包含无效字符。事实上:

Cybercrime-Could-Cost-the-World-$10.5-Trillion-Annually-by-2025-aee2db6e-29ca-4ff9-94e8-09d8656905f3
包含
$
,但slug不能包含
$
A
$
不是有效的段塞字符。
{% extends 'base.html' %}
{% block title %}  Detail{% endblock %}

{% block body_block %}
<h2>I am a blog list home page.</h2>
{% if blogs %}
    {% for blog in blogs %}
    <h2>{{ blog.blog_title }}</h2>
    <div class="row">
        <div class="col-sm-4">
            <img src = "{{ blog.blog_image.url }}" alt="{{ blog.blog_title }}" width='100%;'>
        </div>
        <div class="col-sm-8">
            <p>{{ blog.blog_content | linebreaks }} 
                <a href = "{% url 'blog_details' slug=blog.slug %}">Read More</a>
            </p>
        </div>
        <p><i>{{ blog.publish_date }}</i></p>
        <h5>Posted by {{ blog.author }}</h5>
    </div>
    {% endfor %}

{% else %}
    <p>No articles available!</p>
{% endif %}

{% endblock %}
class Blog(models.Model):
    author = models.ForeignKey(User, on_delete=models.CASCADE, related_name='post_author')
    blog_title = models.CharField(max_length=264, verbose_name='Put a title') 
    slug = models.SlugField(max_length=264, unique = True)
    blog_content = models.TextField(verbose_name='What is on your mind?')
    blog_image = models.ImageField(upload_to = 'blog_images', verbose_name='Blog image')
    publish_date = models.DateTimeField(auto_now_add=True)
    update_date = models.DateTimeField(auto_now=True)
Cybercrime-Could-Cost-the-World-$10.5-Trillion-Annually-by-2025-aee2db6e-29ca-4ff9-94e8-09d8656905f3
class SlugConverter(StringConverter):
    regex = '[-a-zA-Z0-9_]+'
>>> from django.utils.text import slugify
>>> slugify('Cybercrime Could Cost the World $10.5 Trillion Annually by 2025')
'cybercrime-could-cost-the-world-105-trillion-annually-by-2025'
>>> slugify('più')
'piu'