Skip to main content

pyramid tween for fanstatic

Project description

pyramid_fanstatic

This package provide a Pyramid tween for fanstatic and a pyramid scaffold.

Scaffold

Just run:

$ pcreate -s starter -s pyramid_fanstatic myproject

Or:

$ pcreate -s pyramid_fanstatic myexistingproject

if you want to add pyramid_fanstatic to an existing project.

Then read README_FANSTATIC.txt

Fanstatic library definition is added to resources.py. Resources are located in the resources/ directory.

Tween usage

You can use all fanstatic options in your .ini. You just need to prefix options with fanstatic.:

[app:main]
...
fanstatic.publisher_signature = fanstatic

You should add at least those two options:

fanstatic.bottom = true
fanstatic.debug = true # in development.ini

Then include pyramid_fanstatic in your __init__.py:

config.include('pyramid_fanstatic')

Base URLs for resources

Static

By default, resource URLs from Fanstatic come served at in the script root and Fanstatic provides its base_url option to set a URL prefix for all resource URLs. You can utilise this option statically using the following:

[app:main]
...
fanstatic.base_url = https://example.com/myapp

Take note that the URL should not have a trailing slash - Fanstatic has resources URLs that feature a / prefix already.

Dynamic

The above process works, but your application may need to serve from multiple URLs, multiple paths, and so forth. pyramid_fanstatic has a special option to allow the base_url prefix to be configured on a per-request basis. Your application URI is generated using wsgiref.util.application_uri and is based upon the request environment (according to PEP 333).

This option is fanstatic.use_application_uri and is specific to pyramid_fanstatic and is not passed to Fanstatic. Specify this option as follows:

[app:main]
...
fanstatic.use_application_uri = true

Any static base_url that is set will take precedence over this option.

Changelog

0.6 (2020-06-16)

Features

  • Add support for Python 3.7 and 3.8. [sallner, gotcha]

Other

  • Remove zc.buildout and nosetest infratructure in favour of tox and pytest.

0.5 (2013-11-08)

  • Support fanstatic > 1.0 with backward compat

0.4 (2012-09-21)

  • Add new option fanstatic.use_application_uri to have Fanstatic base URLs generated using the current request. A base_url that is set will override this option. [davidjb]

  • Document details about Fanstatic base URLs and the fanstatic.base_url option. [davidjb]

0.3 (2011-12-27)

  • Improve the Pyramid scaffold that’s available with pcreate. [gawel]

0.2 (2011-12-26)

  • Forward requests to Pyramid handler if a resource can’t be found. [gawel]

  • Documentation and coverage improvements [gawel]

0.1 (2011-12-26)

  • Initial release. [gawel]

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page