django-waitinglist¶
Provides a waiting list for running a private beta with cohorts support.
Development¶
The source repository can be found at https://github.com/pinax/django-waitinglist/
Contents¶
Installation¶
To install django-waitinglist (no releases have been yet):
pip install django-waitinglist
Add
waitinglist
to yourINSTALLED_APPS
setting:INSTALLED_APPS = ( # ... "waitinglist", # ... )
See the list of Settings to modify the default behavior of django-waitinglist and make adjustments for your website.
Add
waitinglist.urls
to your URLs definition:urlpatterns = patterns("", ... url(r"^waitinglist/", include("waitinglist.urls")), ... )
Since Django 1.7 the manage.py syncdb option is deprecated there is a fallback option manage.py migrate –run-syncdb To grant a user access the waitinglist management views, first ensure you’ve synced the database to create the
waitinglist.manage_cohorts
permission:from django.conf import settings from django.contrib.auth.models import Permission User = getattr(settings, 'AUTH_USER_MODEL', 'auth.User') user = User.objects.get(username="finnegan") permission = Permission.objects.get(codename="manage_cohorts") user.user_permissions.add(permission)
Dependencies¶
django.contrib.auth
¶
This is bundled with Django. It is enabled by default with all new Django
projects, but if you’re adding django-waitinglist to an existing project you
need to make sure django.contrib.auth
is installed.
django-appconf¶
We use django-appconf for app settings. It is listed in install_requires
and will be installed when pip installs.
django-user-accounts¶
We use this app to handle all the sign up aspects. django-waitinglist is integrated to some hooks provided by this app.
Usage¶
This document covers the usage of django-waitinglist. It assumes you’ve read Installation.
Settings¶
@@@ todo
Templates¶
@@@ todo
Signals¶
@@@ todo
CHANGELOG¶
1.1¶
- remove
is_staff
requirement to access cohort views. - restrict access to cohort views by a login required and a custom
permission:
waitinglist.manage_cohorts
1.0¶
- initial release
- if migrating from Pinax; see Migration from Pinax
Migration from Pinax¶
django-waitinglist is based on pinax.apps.waitinglist
and adds cohorts
support developed internally at Eldarion.
This document will outline the changes needed to migrate from Pinax to using this app in your Django project. If you are new to django-waitinglist then this guide will not be useful to you.
Database changes¶
# @@@ todo
URL changes¶
@@@ todo
View changes¶
All views have been converted to class-based views. This is a big departure from the traditional function-based, but has the benefit of being much more flexible.
@@@ todo: table of changes
Settings changes¶
@@@ todo
General changes¶
django-waitinglist requires Django 1.4. This means we can take advantage of many of the new features offered by Django. This app implements all of the best practices of Django 1.4. If there is something missing you should let us know!
FAQ¶
This document is a collection of frequently asked questions about django-waitinglist.