geex-arts / django-jet

Modern responsive template for the Django admin interface with improved functionality. We are proud to announce completely new Jet. Please check out Live Demo
https://github.com/jet-admin/jet-bridge
GNU Affero General Public License v3.0
3.58k stars 775 forks source link

'jet' is not a registered namespace #180

Closed szabolcsdombi closed 2 months ago

szabolcsdombi commented 7 years ago
Django Version:    1.10.5
Exception Type:    NoReverseMatch
Exception Value:   'jet' is not a registered namespace

Using Python3.5

Steps:

I am able to import jet using python3: python -c "import jet"

szabolcsdombi commented 7 years ago

With the same setup the django-suit works fine.

Ismael-VC commented 7 years ago

I can also reproduce this issue:

Environment:

Request Method: GET
Request URL: http://127.0.0.1:8000/admin/

Django Version: 1.10.5
Python Version: 3.6.0
Installed Applications:
['jet',
 'django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'catalogs',
 'import_export',
 'location_field.apps.DefaultConfig',
 'django.contrib.admindocs']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware']

Template error:
In template C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\contrib\admin\templates\admin\index.html, error at line 58
   'jet' is not a registered namespace   48 : {% endif %}
   49 : </div>
   50 : {% endblock %}
   51 : 
   52 : {% block sidebar %}
   53 : <div id="content-related">
   54 :     <div class="module" id="recent-actions-module">
   55 :         <h2>{% trans 'Recent actions' %}</h2>
   56 :         <h3>{% trans 'My actions' %}</h3>
   57 :             {% load log %}
   58 :              {% get_admin_l og 10 as admin_log for_user user %}
   59 :             {% if not admin_log %}
   60 :             <p>{% trans 'None available' %}</p>
   61 :             {% else %}
   62 :             <ul class="actionlist">
   63 :             {% for entry in admin_log %}
   64 :             <li class="{% if entry.is_addition %}addlink{% endif %}{% if entry.is_change %}changelink{% endif %}{% if entry.is_deletion %}deletelink{% endif %}">
   65 :                 {% if entry.is_deletion or not entry.get_admin_url %}
   66 :                     {{ entry.object_repr }}
   67 :                 {% else %}
   68 :                     <a href="{{ entry.get_admin_url }}">{{ entry.object_repr }}</a>

Traceback:

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\urls\base.py" in reverse
  77.                 extra, resolver = resolver.namespace_dict[ns]

During handling of the above exception ('jet'), another exception occurred:

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\core\handlers\exception.py" in inner
  39.             response = get_response(request)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\core\handlers\base.py" in _get_response
  217.                 response = self.process_exception_by_middleware(e, request)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\core\handlers\base.py" in _get_response
  215.                 response = response.render()

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\response.py" in render
  109.             self.content = self.rendered_content

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\response.py" in rendered_content
  86.         content = template.render(context, self._request)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\backends\django.py" in render
  66.             return self.template.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render
  208.                     return self._render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in _render
  199.         return self.nodelist.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render
  994.                 bit = node.render_annotated(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render_annotated
  961.             return self.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\loader_tags.py" in render
  174.         return compiled_parent._render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in _render
  199.         return self.nodelist.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render
  994.                 bit = node.render_annotated(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render_annotated
  961.             return self.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\loader_tags.py" in render
  174.         return compiled_parent._render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in _render
  199.         return self.nodelist.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render
  994.                 bit = node.render_annotated(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render_annotated
  961.             return self.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\loader_tags.py" in render
  174.         return compiled_parent._render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in _render
  199.         return self.nodelist.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render
  994.                 bit = node.render_annotated(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render_annotated
  961.             return self.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\loader_tags.py" in render
  70.                 result = block.nodelist.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render
  994.                 bit = node.render_annotated(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\base.py" in render_annotated
  961.             return self.render(context)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\template\defaulttags.py" in render
  439.             url = reverse(view_name, args=args, kwargs=kwargs, current_app=current_app)

File "C:\Users\Ismael\Anaconda2\envs\begroup_logsys\lib\site-packages\django\urls\base.py" in reverse
  87.                     raise NoReverseMatch("%s is not a registered namespace" % key)

Exception Type: NoReverseMatch at /admin/
Exception Value: 'jet' is not a registered namespace
SalahAdDin commented 7 years ago

@f1nality Man, please.

Ismael-VC commented 7 years ago

@cprogrammer1994 it seems that we were both confused by the installation instructions.

Steps:

Run python3 -m pip install django-jet Added 'jet' as the first element in the INSTALLED_APPS Run python3 manage.py migrate

Notice you are lacking several steps to complete your installation ⚠️

In my case I was following the installation instructions from the README, at the point of the warning I mistakenly understood that the bullet points below the warning where for pre 1.8 django:

It is easier to understand the installation instructions from the very well formatted and colored instructions at read the docs:

Please try the instructions again, it works.

My advise is to remove the installation instructions from the README, as they are redundant since the docs are linked above in the same document. Also this instructions can become out of sync with the docs easily.

If you guys agree, I can make a PR for that, cheers!

SalahAdDin commented 7 years ago

@Ismael-VC I think there is a problem with migrations file, but i'm not sure. Hey, if you can will better make a PR and @f1nality can review it.

Ismael-VC commented 7 years ago

Please come to the django-jet Discord server so we can organize if you like:

Welcome! 😄

dhouibkhouloud commented 6 years ago

please help me to résolve this problem File "manage.py", line 22, in execute_from_command_line(sys.argv) File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\core\management__init__.py", line 364, in execute_from_command_line utility.execute() File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\core\management__init__.py", line 356, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\core\management\base.py", line 283, in run_from_argv self.execute(*args, *cmd_options) File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\core\management\base.py", line 330, in execute output = self.handle(args, **options) File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\contrib\staticfiles\management\commands\collectstatic.py", line 199, in handle collected = self.collect() File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\contrib\staticfiles\management\commands\collectstatic.py", line 124, in collect handler(path, prefixed_path, storage) File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\contrib\staticfiles\management\commands\collectstatic.py", line 354, in copy_file if not self.delete_file(path, prefixed_path, source_storage): File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\contrib\staticfiles\management\commands\collectstatic.py", line 260, in delete_file if self.storage.exists(prefixed_path): File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\core\files\storage.py", line 392, in exists return os.path.exists(self.path(name)) File "C:\Bitnami\djangostack-1.11.6-0\apps\django\django-1.11.6-py2.7.egg\django\contrib\staticfiles\storage.py", line 50, in path raise ImproperlyConfigured("You're using the staticfiles app " django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without having set the STATIC_ROOT setting to a filesystem path.

SalahAdDin commented 6 years ago

@f1nality

@dhouibkhouloud Hey, STATIC_ROOT setting to a filesystem path. Search it in google. PD: You have to set your STATIC_ROOT.

chaithraraja commented 6 years ago

python manage.py runserver Performing system checks...

System check identified no issues (0 silenced). October 06, 2018 - 05:50:03 Django version 2.1.2, using settings 'djangoproject.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C. Not Found: / [06/Oct/2018 05:50:15] "GET / HTTP/1.1" 404 2146 Internal Server Error: /admin/ Traceback (most recent call last): File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/urls/base.py", line 75, in reverse extra, resolver = resolver.namespace_dict[ns] KeyError: 'jet-dashboard'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/core/handlers/exception.py", line 34, in inner response = get_response(request) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/core/handlers/base.py", line 156, in _get_response response = self.process_exception_by_middleware(e, request) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/core/handlers/base.py", line 154, in _get_response response = response.render() File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/response.py", line 106, in render self.content = self.rendered_content File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/response.py", line 83, in rendered_content content = template.render(context, self._request) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/backends/django.py", line 61, in render return self.template.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 171, in render return self._render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 163, in _render return self.nodelist.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 937, in render bit = node.render_annotated(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 904, in render_annotated return self.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/loader_tags.py", line 150, in render return compiled_parent._render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 163, in _render return self.nodelist.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 937, in render bit = node.render_annotated(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 904, in render_annotated return self.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/loader_tags.py", line 150, in render return compiled_parent._render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 163, in _render return self.nodelist.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 937, in render bit = node.render_annotated(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 904, in render_annotated return self.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/loader_tags.py", line 62, in render result = block.nodelist.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 937, in render bit = node.render_annotated(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 904, in render_annotated return self.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 987, in render output = self.filter_expression.resolve(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 671, in resolve obj = self.var.resolve(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 796, in resolve value = self._resolve_lookup(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 858, in _resolve_lookup current = current() File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/loader_tags.py", line 76, in super return mark_safe(self.render(self.context)) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/loader_tags.py", line 62, in render result = block.nodelist.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 937, in render bit = node.render_annotated(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 904, in render_annotated return self.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/defaulttags.py", line 309, in render return nodelist.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 937, in render bit = node.render_annotated(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 904, in render_annotated return self.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/loader_tags.py", line 62, in render result = block.nodelist.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 937, in render bit = node.render_annotated(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 904, in render_annotated return self.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 987, in render output = self.filter_expression.resolve(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 671, in resolve obj = self.var.resolve(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 796, in resolve value = self._resolve_lookup(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 858, in _resolve_lookup current = current() File "/home/md56/myenv/lib/python3.6/site-packages/jet/dashboard/dashboard.py", line 173, in render_tools return render_to_string('jet.dashboard/dashboard_tools.html', context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/loader.py", line 62, in render_to_string return template.render(context, request) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/backends/django.py", line 61, in render return self.template.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 171, in render return self._render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 163, in _render return self.nodelist.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 937, in render bit = node.render_annotated(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/base.py", line 904, in render_annotated return self.render(context) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/template/defaulttags.py", line 442, in render url = reverse(view_name, args=args, kwargs=kwargs, current_app=current_app) File "/home/md56/myenv/lib/python3.6/site-packages/Django-2.1.2-py3.6.egg/django/urls/base.py", line 86, in reverse raise NoReverseMatch("%s is not a registered namespace" % key) django.urls.exceptions.NoReverseMatch: 'jet-dashboard' is not a registered namespace [06/Oct/2018 05:50:21] "GET /admin/ HTTP/1.1" 500 468713 Not Found: /admin/jet/ [06/Oct/2018 05:50:53] "GET /admin/jet/ HTTP/1.1" 404 4098 Not Found: /admin/jet/dashboard [06/Oct/2018 05:50:59] "GET /admin/jet/dashboard HTTP/1.1" 404 4125

please help me with this

shayneoneill commented 5 years ago

Was this ever solved?

merwok commented 5 years ago
Exception Type:    NoReverseMatch
Exception Value:   'jet' is not a registered namespace

This is a URL configuration issue. In the install docs, we can see url(r'^jet/', include('jet.urls', 'jet')) added to urlpatterns: the last string is a URL namespace.

(That said, the docs seem to target older django versions, I don’t know if django-jet works with recent versions.)

shayneoneill commented 5 years ago

Yeah I found it in the end. Whoops.

I probably should have recognized the error lol. The joys of sleep deprivation.

ghost commented 5 years ago

By adding STATIC_ROOT = os.path.join(os.path.dirname(BASE_DIR), "static") to the settings.py it worked fine ( :

rowsheet commented 4 years ago

reverse('jet-dashboard:update_module' is trying to reach the url /jet-dashboard or something with that namespace. Chances are your URL config looks like:

    re_path(r'^jet/', include(('jet.urls', 'jet'))),
    re_path(r'^jet/dashboard/', include(('jet.dashboard.urls', 'jet-dashboard'))),

It should look like:

    re_path(r'^jet/', include(('jet.urls', 'jet'))),
    re_path(r'^jet/dashboard/', include('jet.dashboard.urls', namespace='jet-dashboard')),
SalahAdDin commented 4 years ago

Pull request are welcomed.