Installation¶
This document describes the steps needed to set up pennyblack in your own project.
Since pennyblack is based on FeinCMS, you’ll need a FeinCMS installation first.
You can also install pennyblack using pip like so:
$ pip install pennyblack
Or you can grab your own copy of the pennyblack source from github:
$ git clone git://github.com/allink/pennyblack.git
Some features like spf detection need pyspf and pydns installations.
Make sure that the FeinCMS and pennyblack Apps are added to installed apps in the settings.py:
'feincms',
'feincms.module.medialibrary',
'pennyblack',
Add a newsletter url to the urls.py:
url(r'^newsletter/', include('pennyblack.urls'), name = 'pennyblack'),
Cronjob¶
To send emails and receive bounced emails these to management commands have to be executed:
./manage.py sendmail
./manage.py getmail
Configuration¶
To use pennyblacks newsletter model, you need to register html templates and content types like you do for the FeinCMS page module. Simple newsletter with only text content would look like this:
from pennyblack.models import Newsletter
from pennyblack.content.richtext import TextOnlyNewsletterContent
Newsletter.register_templates({
'key': 'base',
'title': 'Generic Newsletter',
'path': 'pennyblack/base_newsletter.html',
'regions': (
('main', 'Main Region'),
),
})
Newsletter.create_content_type(TextOnlyNewsletterContent)
South Migrations¶
To use south migrations specify a south migration module in the settings:
SOUTH_MIGRATION_MODULES = {
'pennyblack': 'project_name.migrations_pennyblack',
}