Hi! Not really an answer... and also a bit off topic. But are you aware of Fanstatic[1] ? I've wrote a pyramid_fanstatic package to use it as a pyramid tween[2] And a blog post about how to use lesscss with all that stuff[3]
May be it can feet your needs... [1] http://www.fanstatic.org/en/0.11.2/index.html [2] http://pypi.python.org/pypi/pyramid_fanstatic [3] http://www.gawel.org/weblog/en/2011/12/Using_lesscss_with_pyramid_and_fanstatic On Mon, Jan 16, 2012 at 3:08 PM, Marius Gedminas <[email protected]> wrote: > On Mon, Jan 16, 2012 at 05:28:45AM -0800, Martin Stein wrote: >> For the current project at work, we are looking into using require.js >> (http://requirejs.org/) to combine, modularize and minify our >> javascript. So, basically, we need to have a server-side build step >> before serving our static files. Our plan is as follows: >> >> - have our pre-build javascript files in the usual '/static' directory >> - put the results from require's optimizer to a '/static-build' >> directory. (The require.js docs recommend a separate directory.) >> >> Depending on development or production scenario (taken from .ini- >> file), the static files should be served from one or the other >> directory. However, so far I don't see a nice approach to this. When >> we started the project, we used the normal Pyramid approach in our >> templates. In our __init__.py, we have something like: >> >> config.add_static_view('static', 'myproject:static', >> cache_max_age=3600) >> >> In the jinja-template, we created the links with >> >> <script src="{{request.static_url('myproject:static/js/ >> application.js')}}" type="text/javascript"></script> >> >> But if the directory changes from 'static' to 'static-build', we would >> have to change all our static_url(..) calls. Is there a way to make >> the resource 'myproject:static' refer to a different directory, >> depending on .ini configuration? >> >> One approach would be to read the resource directory from the .ini >> file and add the static view like this: >> >> config.add_static_view('static', RESOURCE_FROM_INI, >> cache_max_age=3600) >> >> Then, you could refer to the files like this: >> >> <script src="{{ request.script_name }}/js/application.js'" type="text/ >> javascript"></script> > > I think {{ request.application_url }}/js/application.js is more > appropriate here. > >> (note that you need the 'script_name', because on the production >> server your application might be deployed under a URL prefix). But the >> 'request.script_name' approach looks kind of hacky to me and it means >> we'd have to replace all our static_url(..)-calls. Do you see another >> way to do this elegantly? >> >> The trend for larger javascript-heavy apps seems to be going towards >> require.js, so I think a nice solution for this problem will be >> interesting for lots of people. > > /me is listening with interest > > Marius Gedminas > -- > Colorless green ideas sleep furiously. -- You received this message because you are subscribed to the Google Groups "pylons-discuss" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/pylons-discuss?hl=en.
