Python NoReverseMatch when Viewing the Page

26 views
Skip to first unread message

antanas skiudulas

unread,
Jun 17, 2016, 3:06:50 PM6/17/16
to Django users

I'm a newbie trying to make a wiki page with Django, however, I keep running into this very annoying problem:

NoReverseMatch at /wiki/page/Start/ Reverse for '' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

Sites urls.py

    urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^polls/', include('polls.urls')),
    url(r'^wiki/', include('wiki.urls')),
]
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

wiki urls.py

app_name = 'wiki'
urlpatterns = [
    url('^', include('django.contrib.auth.urls')),
    url(r'^login/$', auth_views.login, {'template_name': 'wiki/registration/login.html'}, name='login'),
    url(r'^logout/$', auth_views.logout, {'template_name': 'wiki/registration/logged_out.html'}, name='logout'),
    url(r'^register/$',views.register_page, name='register'),
]

urlpatterns += [
    url(r'^page/(?P<page_name>[^/]+)/edit/$',views.edit_page, name='EditPage'),
    url(r'^page/(?P<page_name>[^/]+)/save/$',views.save_page, name='SavePage'),
    url(r'^page/(?P<page_name>[^/]+)/$',views.view_page, name='ViewPage'),
    url(r'^upload/$', views.upload_file, name='upload_page' ),
]

Views.py

def view_page(request, page_name):
    try:
        page = Page.objects.get(pk=page_name)
    except Page.DoesNotExist:
        return render(request,"wiki/create.html", {"page_name":page_name}) 
    content = page.content
    return render(request, "wiki/view.html", {"page_name":page_name, "content":content})

view template which is plugged with the base. This problem applies to every single thing i try to open on my webpage. I have a navigation bar with navigation items such as login or logout, i get a very similar error.

{% extends 'wiki/base.html' %}
{% load wiki_extra %}

<html>
        <head>
                <title>{{page_name}}</title>
        </head>
        <body>
            {% block content %}
                <h1>{{page_name}}</h1>
                {% autoescape off %}
                {{content|markup}}
                {% endautoescape %}
                <div class="col-lg-12 text-center">
                <form action="{% url 'wiki:EditPage' page_name=page_name %}">
                    <button class="btn btn-lg btn-danger" type="submit">Edit this page?</button>
                </form>
                </div>
            {% endblock %}
        </body>
</html>

Full error

Request Method: GET
Request URL:    http://127.0.0.1:8000/wiki/page/Start/
Django Version: 1.9.7
Exception Type: NoReverseMatch
Exception Value:    
Reverse for '' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

ludovic coues

unread,
Jun 18, 2016, 4:28:20 AM6/18/16
to django...@googlegroups.com
Can you post the INSTALLED_APPS part of your settings.py ?

2016-06-17 21:01 GMT+02:00 'antanas skiudulas' via Django users
<django...@googlegroups.com>:
> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to django-users...@googlegroups.com.
> To post to this group, send email to django...@googlegroups.com.
> Visit this group at https://groups.google.com/group/django-users.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/django-users/b87f11e3-0136-4eaa-9fca-64da3f187c70%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.



--

Cordialement, Coues Ludovic
+336 148 743 42

James Schneider

unread,
Jun 18, 2016, 12:27:29 PM6/18/16
to django...@googlegroups.com


On Jun 17, 2016 12:06 PM, "'antanas skiudulas' via Django users" <django...@googlegroups.com> wrote:
>
> I'm a newbie trying to make a wiki page with Django, however, I keep running into this very annoying problem:
>
> NoReverseMatch at /wiki/page/Start/ Reverse for '' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []
>
> Sites urls.py
>
>     urlpatterns = [
>     url(r'^admin/', admin.site.urls),
>     url(r'^polls/', include('polls.urls')),
>     url(r'^wiki/', include('wiki.urls')),
> ]
> urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
>
> wiki urls.py
>
> app_name = 'wiki'
> urlpatterns = [
>     url('^', include('django.contrib.auth.urls')),
>     url(r'^login/$', auth_views.login, {'template_name': 'wiki/registration/login.html'}, name='login'),
>     url(r'^logout/$', auth_views.logout, {'template_name': 'wiki/registration/logged_out.html'}, name='logout'),
>     url(r'^register/$',views.register_page, name='register'),
> ]
>
> urlpatterns += [
>     url(r'^page/(?P<page_name>[^/]+)/edit/$',views.edit_page, name='EditPage'),
>     url(r'^page/(?P<page_name>[^/]+)/save/$',views.save_page, name='SavePage'),
>     url(r'^page/(?P<page_name>[^/]+)/$',views.view_page, name='ViewPage'),
>     url(r'^upload/$', views.upload_file, name='upload_page' ),
> ]
>

Try moving the 'url('^', include('django.contrib.auth.urls')),' line all the way to the end of your urlpatterns. The '^' is matching every URL.

-James

Reply all
Reply to author
Forward
0 new messages