Hello, Carl and Alex,

You're right: Apart from not being able to embed Django sites, there's 
nothing preventing twod.wsgi from working with Django as it is now.

So I guess that means that it won't be considered for inclusion in Django? 
If so, I'll close that ticket.

Cheers,

 - Gustavo.



On Thursday, April 11, 2013 3:31:51 PM UTC+1, Gustavo Narea wrote:
>
> Hello, everybody.
>
> In the interest of finding a resolution to Ticket 
> #12091<https://code.djangoproject.com/ticket/12091>, a 
> 3-year-old ticket, I wanted to bring this issue to your attention.
>
> I think that Django should have built-in support for running WSGI 
> applications from inside views. (NB: I really mean running WSGI apps from 
> inside Django views -- I'm not talking about using a WSGI middleware that 
> routes requests to your Django project or another WSGI application.)
>
> If you're able to embed WSGI applications in your Django project, you'd be 
> able to do many things. For example:
>
>    - Control access to static files, while still letting your Web server 
>    do the file transfer: http://pythonhosted.org/xsendfile/
>    - Re-use your Django-based authentication in other applications, even 
>    applications not written in Python. For example, if your Django site runs 
>    at "/" and your Wordpress blog and Trac instance live at "/blog/" and 
>    "/tickets/", respectively, your users would only have to log in once if 
>    your Django site proxies requests to Wordpress and Trac. Here's how I've 
>    integrate them in the past: https://bitbucket.org/Gustavo/weesgo/ and 
>    http://gustavonarea.net/files/talks/europython2010/all-materials.zip
>    - Alter the response returned by another web application or web site, 
>    using HttpResponse objects.
>
> It basically comes down to being able to integrate other applications and 
> websites, and then filter the requests they get and/or the responses they 
> return -- Using Django request and response objects.
>
> I decided to reimplement the patch I created 3 years ago in a separate 
> project 
> (twod.wsgi<http://pythonhosted.org/twod.wsgi/manual/embedded-apps.html>), 
> which means that it's possible to do this without changing Django. However, 
> it doesn't support embedding Django projects because of Django's use of 
> global data (DJANGO_SETTINGS_MODULE and django.conf.settings), which I 
> think can only be solved by introducing thread locals in django.conf. At 
> the moment, the only way to accomplish this would be by proxying the second 
> Django site with inter-process communication (e.g., CGI, FastCGI or HTTP).
>
> I'm not going to insist on adding support for embedding other Django 
> projects, because I personally haven't had the need to do that and 
> introducing thread locals in django.conf may be controversial. But I guess 
> it might be useful to other people.
>
> So, do you agree that Django should have built-in support for running WSGI 
> applications from inside views?
>
> Thanks in advance!
>
>  - Gustavo Narea.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-developers?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to