Skip to main content

Django utility wrapping dateutil.rrule

Project description

# django-recurrence

django-recurrence is a utility for working with recurring dates in
Django. Documentation is available at
https://django-recurrence.readthedocs.org/.

It provides:

- Recurrence/Rule objects using a subset of rfc2445 (wraps
`dateutil.rrule`) for specifying recurring date/times;
- `RecurrenceField` for storing recurring datetimes in the database;
- JavaScript widget.

`RecurrenceField` provides a Django model field which serializes
recurrence information for storage in the database.

For example - say you were storing information about a university
course in your app. You could use a model like this:

```python
import recurrence.fields

class Course(models.Model):
title = models.CharField(max_length=200)
start = models.TimeField()
end = models.TimeField()
recurrences = recurrence.fields.RecurrenceField()
```

You'll notice that I'm storing my own start and end time. The
recurrence field only deals with _recurrences_ not with specific time
information. I have an event that starts at 2pm. Its recurrences
would be "every Friday". For this to work, you'll need to put the
`recurrence` application into your `INSTALLED_APPS`

## Running the tests

Our test coverage is currently fairly poor (we're working on it!),
but you can run the tests by making sure you've got the test
requirements installed:

pip install -r requirements_test.txt

Once you've done that, you can run the tests using:

make test

You can generate a coverage report by running:

make coverage

You can run tests on multiple versions of Python and Django by
installing tox (`pip install tox`) and running:

tox

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-recurrence-1.3.0.tar.gz (86.8 kB view hashes)

Uploaded Source

Built Distribution

django_recurrence-1.3.0-py2-none-any.whl (66.2 kB view hashes)

Uploaded Python 2

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