Skip to main content

like flatpages, but with templates.

Project description

Current Release License

like flatpages, but with templates

This is like Django’s contrib.flatpages, but without the database. It’s just static html documents served from your filesystem.

Motivation

I’ve been using the flatpages app for a long time, but somewhere along the line I started keeping my flatpage content (snippets of html) in the git repo with the rest of my project. Any time I made a change to a flatpage, I’d edit the file locally, commit the changes, then copy and paste the new content into the relevant flatpage.

Why not just serve these from my templates directory?

That’s what staticflatpages does.

Installation

Install the latest release with pip:

pip install django-staticflatpages

Configuration

  1. Add staticflatpages to your INSTALLED_APPS.

  2. Add staticflatpages.middleware.StaticFlatpageFallbackMiddleware to your MIDDLEWARE_CLASSES

  3. Create a staticflatpages template directory. This should be a subdirectory of one of the templates in your TEMPLATE_DIRS. Any templates you include here (except for a base.html) will get served as a static page.

For example, assuming your project-level template directory is named “templates”, then:

  • The url /about/ will render templates/staticflatpages/about.html

  • The url /about/team/ will render templates/staticflatpages/about/team.html

Sitemaps

This app also supports sitemaps for staticflatpages. To enable these, you’ll need to have django.contrib.sitemaps listed in your INSTALLED_APPS. Then, just set up a sitemap (e.g. in your Root URLconf):

from staticflatpages.sitemaps import StaticFlatpageSitemap

sitemaps = {
    'staticflatpages': StaticFlatpageSitemap,
}

Then include your sitemaps urls as normal:

urlpatterns += patterns('django.contrib.sitemaps.views',
    url(r'^sitemap\.xml$', 'index', {'sitemaps': sitemaps}),
    url(r'^sitemap-(?P<section>.+)\.xml$',
        'sitemap',
        {'sitemaps': sitemaps}
    ),
)

Settings

If you use the sitemaps feature, you may also want to include the following settings:

  • STATICFLATPAGES_CHANGEFREQ: Corresponds to the Sitemap.changefreq attribute (defaults to never).

  • STATICFLATPAGES_PRIORITY: Corresponds to the Sitemap.priority attribute (defaults to 0.5).

License

This code is distributed under the terms of the MIT license. See the LICENSE file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-staticflatpages-0.3.1.tar.gz (6.5 kB view details)

Uploaded Source

File details

Details for the file django-staticflatpages-0.3.1.tar.gz.

File metadata

File hashes

Hashes for django-staticflatpages-0.3.1.tar.gz
Algorithm Hash digest
SHA256 f04bd47df13c95e6675d0ede2611c7cf6af588755e0ab0cdc07cc9ab6370027d
MD5 c3ae5770c40e5ef559df0bd965e32df0
BLAKE2b-256 8d6c5b32b0c1f7aa273283e269a27d1d602215d2f9327fd12817aa98bf8850ed

See more details on using hashes here.

Supported by

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