Have a look at following Unobtrusive Ajax, it is plug out of ASP.NET MVC, 
simple yet powerful.

https://github.com/farazmasoodkhan/DjangoAjax



On Tuesday, September 4, 2012 6:39:49 PM UTC+5, dotnetCarpenter wrote:
>
> Hi all.
>
> I'm new here and just took over a Django project for the first time. I'm 
> still getting to grip with Django but as a front end dev for the past 5 
> years, I'm also looking for a client-side library/framework to go together 
> with my project.
> My requirements for a JS framework is that it:
>
>    1. is unobtrusive (Django rendered HTML will be shown to scraper bots 
>    like google)
>    2. provides some sort of structure (MVC, MVP, MVVM ect.)
>    3. embraces standards
>    4. doesn't conflict with Django templates or does so intentionally
>    5. ideally uses the same template language as Django
>
> In the ideal world a request/response scenario would look like this:
>
>    1. A client make a (HTTP) request to the (django powered) web site 
>    with (HTTP) Accept header text/html
>    2. Django response in the usual way by rendering the assign View 
>    (django template)
>    3. The view figure out if JS is supported (implemented in JS). If no, 
>    this scenario stays in loop 1-3. If yes, then 4.
>    4. The client (usually a browser) wire up the client-side app 
>    structure, hook in to URI links, add transitions between views, 
>    data-bindings ect.
>    5. Subsequent request are now handle by the JS framework, either user 
>    initiated (e.g. clicking a link) or app initiated (e.g. pulling extra 
>    data), that will modify the request header to Accept header 
>    application/json or application/django-template.
>    6. If django receive a request with an application/django-template 
>    header it will serve the view as plain text. E.g. Content-type: 
> text/plain. 
>    On the other hand if django receive a request with application/json, it 
>    will send the object model defined in the view as JSON.
>    7. The client-side JS framework will receive a template to render in 
>    the first request and the data to render in the template in the second 
>    request. A promise object could be used to synchronize the two calls.
>
> This way django will work as intended for non JS clients and silently 
> convert to a RIA in clients that supports JS, with minimal double work for 
> the two execution contexts.
> A big pro in this is the fact that both django and the JS framework share 
> template and data (only has to defined once - in django) - we'll duck type 
> all the way. But does this JS framework exist? Does anyone have any 
> experience with working with django and JS frameworks? Is there any obvious 
> pitfalls in my ideal world scenario in regard to Django? And finally, is it 
> possible to serve templates as plain text with django?
>  
>
> Cheers, Jon and thanks in advance
>
> PS. I accidentally cross-posted this to the Django Developers group before 
> realizing it was the wrong forum. Sorry about that. 
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/django-users/-/j4NQCOQM9T0J.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to