$ pip install BlastOff
or use setuptools:
$ easy_install BlastOff
or old school, download the package from http://pypi.python.org/pypi/BlastOff, unpack it and run (as root if required):
$ python setup.py install
Create a new Pylons project from the BlastOff template with:
$ paster create -t blastoff AppName
You will be prompted for a few options, which will determine what features, configuration and dependencies will be included in the project.
1. SQLAlchemy database URL
Enter sqlalchemy_url (The SQLAlchemy URL of the database) ['sqlite:///%(here)s/development.db']:
Specify the database URL that will be used by SQLAlchemy. Defaults to an SQLite database. For PostgreSQL use something like:
2. SchemaBot database schema version control
Enter use_schemabot (Enable database schema version control using SchemaBot) [True]:
If True then SchemaBot will be used to automatically mange the SQLAlchemy database schema.
3. Email confirmation to activate new user accounts
Enter email_confirmation (True/False: New users must click activation link from confirmation email) [True]:
If True the application will be configured to send a confirmation email to the user upon registration. The email will contain a link for activating the account before it can be used. If False no activation confirmation will be configured so users will be able to login immediately after registering.
4. Create a default user
Enter default_user (Default username to create, password will match username (leave blank for no default user)) ['']:
To have a default user created when the database is set up enter the username here.
After creation the Pylons app is ready to be used.
To ensure all the application dependencies are installed you can run this command from the application directory:
$ python setup.py develop
Before starting the app the database needs to be set up (i.e. tables created). This is done by using the standard Pylons command:
$ paster setup-app development.ini
If the SchemaBot option was enabled then a BlastOff generated project
will use SchemaBot to manage database schema changes. The initial
tables will be created by SchemaBot, the default user inserted if that
option was selected, and the database marked as schema version 1. See
model/__init__.py within the application source for more information.
To run the application use the standard Pylons command:
$ paster serve --reload development.ini
Point your browser at the URL http://127.0.0.1:5000/
The generated project contains model and functional tests that can be run using the "nosetests" command (requires the Nose package to be installed).
BlastOff is simply a template and applications created from it will have no dependency on BlastOff after creation. The application will be a standard Pylons project with a number of pre-configured dependencies. Read the Pylons documentation as well as the documentation for each of the dependent projects for more information.
A BlastOff generated application may have any of the following dependencies (depending on chosen configuration options):
- Pylons >= 0.9.7
- SQLAlchemy >= 0.5
- SchemaBot >= 0.1a2
- TurboMail >= 3.0b2