Reload all django url's files without restarting server

573 views Asked by At

I need to change my urls in site without reloading server.

Using: Django 4.0.2

with open('settings.json', 'r+') as f:
    data = json.load(f)
    if data['urls']['posts']["type"] != 'Custom':
        if data['urls']['posts']["type"] == 'Name':
            urlpatterns.append(path('<slug:slug>/', details))
        if data['urls']['posts']["type"] == 'Id':
            urlpatterns.append(path('<int:pk>/', details))

So if param type change, django don't see that, cause urls.py runs only on server reload

Probably we can make server reload, but for sure not manualy So i used this:

import sys
from django.conf import settings


def reload_urlconf(urlconf=None):
    if urlconf is None:
        urlconf = settings.ROOT_URLCONF
    if urlconf in sys.modules:
        reload(sys.modules[urlconf])

I had an error:

Unresolved reference 'reload'

0

There are 0 answers