blob: 1a11f222cd2f04d617f40499ec836b20e903b52f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
.. _static_directive:
``static``
----------
Use of the ``static`` ZCML directive or allows you to serve static
resources (such as JavaScript and CSS files) within a
:mod:`repoze.bfg` application. This mechanism makes static files
available at a name relative to the application root URL.
Attributes
~~~~~~~~~~
``name``
The (application-root-relative) URL prefix of the static directory.
For example, to serve static files from ``/static`` in most
applications, you would provide a ``name`` of ``static``.
``path``
A path to a directory on disk where the static files live. This
path may either be 1) absolute (e.g. ``/foo/bar/baz``) 2)
Python-package-relative (e.g. (``packagename:foo/bar/baz``) or 3)
relative to the package directory in which the ZCML file which
contains the directive (e.g. ``foo/bar/baz``).
``cache_max_age``
The number of seconds that the static resource can be cached, as
represented in the returned response's ``Expires`` and/or
``Cache-Control`` headers, when any static file is served from this
directive. This defaults to 3600 (5 minutes). Optional.
Examples
~~~~~~~~
.. topic:: Serving Static Files from an Absolute Path
.. code-block:: xml
:linenos:
<static
name="static"
path="/var/www/static"
/>
.. topic:: Serving Static Files from a Package-Relative Path
.. code-block:: xml
:linenos:
<static
name="static"
path="some_package:a/b/c/static"
/>
.. topic:: Serving Static Files from a Current-Package-Relative Path
.. code-block:: xml
:linenos:
<static
name="static"
path="static_files"
/>
Alternatives
~~~~~~~~~~~~
:meth:`repoze.bfg.configuration.configurator.add_static_view` can also
be used to add a static view.
See Also
~~~~~~~~
See also :ref:`static_resources_section` and
:ref:`generating_static_resource_urls`.
|