Skip to main content

Simple Affiliate System for Django

Project description

# Simple Affiliate System for Django


This is a very simple library that can be used to provide affiliate links in your django application.
It is intentionally very lightweight, allowing your application to do whatever it wants with the data.

The project is very loosely inspired by the [django-affiliate](https://github.com/st4lk/django-affiliate) library,
though seeks to provide a lighter-weight way to provide the core set of functionality without requiring the
use of any additional data models.

If you are looking for a more heavyweight/comprehensive solution you may be better off with
[django-affiliate](https://github.com/st4lk/django-affiliate).

## How it Works


You give a code to each partner you want to send links to your application.
They choose a link that includes their code in an `aid` parameter in the URL. E.g.

`http://example.com/?aid=12345`

This code is saved in the django session using a middleware, which also adds the id to the request
as `request.affiliate_id` (note: the ID will also be added if there was no URL param but an id was found
already in the session).

Then you can use whatever custom processing logic you want on the `request.affiliate_id` throughout the
rest of your code.

## Requirements

- python (only tested on 3.5 but should work in 2.7)
- django (only tested in 1.11 but might work with older versions)


## Quick start

1. Install this package to your python distribution

`pip install django-affiliate`

2. Add `'simple_affiliate.middleware.affiliate_middleware'` to `MIDDLEWARE`:

```python
MIDDLEWARE = (
# ...
'simple_affiliate.middleware.affiliate_middleware',
)
```

3. Reward / track affiliate

```python
if request.affiliate_id and made_some_cash(request):
pay_affiliate_by_id(request.affiliate_id, dollar_value(request)
```

## Project Todos

- [] Add / document expiration timeout functionality
- [] Add tests


Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

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

Source Distribution

django-simple-affiliate-0.1.tar.gz (3.1 kB view details)

Uploaded Source

Built Distribution

django_simple_affiliate-0.1-py2.py3-none-any.whl (5.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-simple-affiliate-0.1.tar.gz.

File metadata

File hashes

Hashes for django-simple-affiliate-0.1.tar.gz
Algorithm Hash digest
SHA256 29c0c5c796914fa2d5b76addd199dec4c82a951f52d1bc6a7b2e3c61ffdbedbe
MD5 d8ac0c2a4f067e3a9e0484a3d606dc89
BLAKE2b-256 6051a97796558e44e2e14b5fa1f8425c1e0ccf148e5c11064b233f27c7fb8f3f

See more details on using hashes here.

File details

Details for the file django_simple_affiliate-0.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_simple_affiliate-0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 bf9b636950ac191ce46618399be405a3d279d6dbd9ae490d11950dd12f9c69f0
MD5 56c696e4e1a3c20272d7edece8562fa1
BLAKE2b-256 d2fab147b3785ee79193fcc83359338bccc18050dabd03e3f4d3d4b423be485f

See more details on using hashes here.

Supported by

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