Development #9727
Mis à jour par Benjamin Dauvergne il y a plus de 8 ans
L'idée c'est de pouvoir écrire ça comme cela:
<pre>
class MonApplication(AppSetting):
urls = urlpatterns('',
url('^web-service-1/$', views.mon_application_web_service_1),
...)
...
</pre>
et d'avoir une vue générale:
<pre>
url('^ws(?P<path>/.*)$', url('ws(?P<path>/.*, views.all_web_services)
</pre>
<pre>
from django.http import Http404
from django.core.urlresolvers import resolve
def all_web_services(request, path):
site_app = get_site_app()
if hasattr(site_app, 'urls'):
view, args, kwargs = resolver(path, urlconf=site_app.urls)
return view(*args, **kwargs)
raise Http404
</pre>
Comme ça on ne charge pas les vues de toutes les applications sur tous les tenants.
<pre>
class MonApplication(AppSetting):
urls = urlpatterns('',
url('^web-service-1/$', views.mon_application_web_service_1),
...)
...
</pre>
et d'avoir une vue générale:
<pre>
url('^ws(?P<path>/.*)$', url('ws(?P<path>/.*, views.all_web_services)
</pre>
<pre>
from django.http import Http404
from django.core.urlresolvers import resolve
def all_web_services(request, path):
site_app = get_site_app()
if hasattr(site_app, 'urls'):
view, args, kwargs = resolver(path, urlconf=site_app.urls)
return view(*args, **kwargs)
raise Http404
</pre>
Comme ça on ne charge pas les vues de toutes les applications sur tous les tenants.