Skip to main content

UNKNOWN

Project description

# Feature Flipper

A set of simple feature flipper template tags that can be easily extended.

## Installation

To install this, simply `pip install django-feature-flipper`.

## Usage

Configure your `INSTALLED_APPS` in `settings.py`

```python
INSTALLED_APPS = (
...
'feature_flipper',
...
)
```

This gives you access to the basic feature flipping models and template tags.
You can then use the basic `FeatureFlipper` that turns flags on and off
depending on your user, or customise your own.

### Basic Feature Flipper

Set the flag choices in your `settings.py` file as:

```python
FEATURE_FLIPPER_FLAGS = (
('simple_feature', u'Simple Feature'),
('beta_testing', u'Beta Testing'),
)
```

When you add features, simply add flags here and your application will be able
to access the new flags immediately.

### Custom Feature Flipper

To customise the feature flipper you can just extend
`feature_flipper.models.AbstractFeatureFlipper` with your own field. This
provides a major advantage over the basic flipper by letting you determine your
own reference for filtering out whether users get a feature or not.

First, extend the `AbstractFeatureFlipper` model:

```python
from feature_flipper.models import AbstractFeatureFlipper


class MyFeatureFlipper(AbstractFeatureFlipper):
"""
"""
USER_FEATURE_FIELD = 'company'

company = models.ForeignKey('myapp.Company')
```

The `USER_FEATURE_FIELD` sets the field that should be used for lookups when
determining whether to show the feature to a user. The final part is to
reference this in your `settings.py`:

```python
FEATURE_FLIPPER_MODEL = 'myapp.MyFeatureFlipper',
```

Project details


Download files

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

Files for django-feature-flipper, version 0.0.1
Filename, size File type Python version Upload date Hashes
Filename, size django-feature-flipper-0.0.1.tar.gz (3.9 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page