开发者

Caught NoReverseMatch while rendering: Reverse for '' with arguments '(1,)' and keyword arguments '{}' not found

My view :

def display(request):
    feed = SoukFeedMaster.objects.filter(person = request.user)
    return render(request, 'soukfeed/display.html', {'feed' : feed ,})

My Template :

{% extends "base.html" %}

    {% block content %}    
    {% for x in feed %}
        {% load url from future %}
        <a href="{% url x.content.url_internal_django_link  x.content.id  %}">  {{x.content.content}} </a>
        <br/> 
    {% endfor %}

    {% endblock %}

Traceback :

Environment:


Request Method: GET
Request URL: http://localhost:8000/soukfeed/

Django Version: 1.3
Python Version: 2.7.1
Installed Applications:
['django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.sites',
 'django.contrib.messages',
 'django.contrib.comments',
 'ec.kiosk',
 'ec.chakra',
 'ec.ajax',
 'ec.broadcast',
 'ec.connect',
 'ec.seek_solutions',
 'ec.feed',
 'ec.ec_model',
 'ec.info',
 'ec.souk_info',
 'ec.ec_central',
 'ec.domains',
 'ec.souk',
 'ec.souk_feed',
 'ec.meta',
 'django.contrib.admin']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware')


Template error:
In template /volumes/disk2/workspace/templates/ec/soukfeed/display.html, error at line 1
   Caught NoReverseMatch while rendering: Reverse for '' with arguments '(1,)' and keyword arguments '{}' not found.
   1 : {% extends "base.html" %}

    {% block content %}    
     {% for x in feed %} 
        {% load url from future %}
        <a href="{% url x.content.url_internal_django_link  x.content.id  %}">  {{ x.content.content }} </a>
        <br/> 
    {% endfor %}

    {% endblock %}


Traceback:
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  111.                         response = callback(request, *callback_args, **callback_kwargs)
File "/Volumes/Disk2/workspace/ec/ec/souk_feed/views.py" in display
  18.         return render(request, 'soukfeed/display.html', {'feed' : feed ,})
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/shortcuts/__init__.py" in render
  44.     return HttpResponse(loader.render_to_string(*args, **kwargs),
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/loader.py" in render_to_string
  188.         return t.render(context_instance)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/base.py" in render
  123.             return self._render(context)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/base.py" in _render
  117.         return self.nodelist.render(context)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/base.py" in render
  744.                 bits.append(self.render_node(node, context))
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/debug.py" in render_node
  73.             result = node.render(context)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django开发者_开发百科/template/loader_tags.py" in render
  127.         return compiled_parent._render(context)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/base.py" in _render
  117.         return self.nodelist.render(context)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/base.py" in render
  744.                 bits.append(self.render_node(node, context))
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/debug.py" in render_node
  73.             result = node.render(context)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/loader_tags.py" in render
  64.             result = block.nodelist.render(context)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/base.py" in render
  744.                 bits.append(self.render_node(node, context))
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/debug.py" in render_node
  73.             result = node.render(context)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/defaulttags.py" in render
  227.                 nodelist.append(node.render(context))
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/defaulttags.py" in render
  450.                         raise e

Exception Type: TemplateSyntaxError at /soukfeed/
Exception Value: Caught NoReverseMatch while rendering: Reverse for '' with arguments '(1,)' and keyword arguments '{}' not found.


Just had the same problem with my app. The following solved it for me:

Because you’re using the {% url %} tag to generate the link to the view, you need to add the URLs for the application to your project’s root URLConf module (via include() calls). If you use the {% url %} tag with a URL name that you haven’t yet set up in your project, it won’t be able to find the correct URL and will simply return an empty string instead of a URL.

So basically the problem is that the url you're looking up must be in the urls.py of your project, otherwise Django can't find and trace it.


It is really not enought information. But the problem is here:

{% url x.content.url_internal_django_link  x.content.id  %}

May be you need that:

{% extends "base.html" %}

{% block content %}    
{% for x in feed %}
    <a href="{{ x.content.get_absolute_url }}">  {{x.content.content}} </a>
    <br/> 
{% endfor %}

{% endblock %}

But I am not sure - it depends from you model code and your general logic


Exception Value: Caught NoReverseMatch while rendering: Reverse for '' with arguments '(1,)' and keyword arguments '{}' not found.

it looks like your x.content.url_internal_django_link is returning an empty string.

Check your db or change your {% url %} tags temporarily to:

{{ x.content.url_internal_django_link }}

to see what is stored and why you are getting empty strings from the db.


I have got the same exception output saying that not able to '(93L,)' and the keyword argument is not found.

Check the urls.py,where you can see that the url is not provided there.So provide the url then youre not going to this error.


Another possibility is that the regex string of URL is not matched with your request.user.username

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜