Welcome to WorkStyle (with django)

looking for japanese? see WorkStyle_ja

WorkStyle is a GTD Tools.

TODO is only classified by TAG and status.

It's easy to use and install.

sand box is here


  • linux or OSX (Windows may not work attachfile)
  • python(version 2.3 or later)
  • django0.91
  • some database(PostgreSQL or SQLite3 or MySQL) and python bindings
  • web-server apache with mod_fastcgi,fcgi or lighttpd with fcgi (apache and lighttpd with fcgi is not work)

how to install

Installation of Python2.3 or later, and a database and its Python binding -- therefore, it does not explain.
The Python binding required of each database is as follows.

1.Download Django0.91 and WorkStyle-django0.2.1

goto Django Project, then download Django-0.91
goto WorkStyle-py Project, then download WorkStyle-django version0.2.1

2.Installation of Django

Expand django-0.91.tar.gz and run setup.py

 tar xzf django-0.91.tar.gz 
 cd Django-0.91 
 sudo python setup.py install 
From now on, this django directory will be described to be DJANGO_HOME.

3.Installation of WorkStyle

First, Expand WorkStyle-0.2.1.zip and run setup.py
 unzip WorkStyle-0.2.1.zip 
 cd WorkStyle-0.2.1 
 sudo python setup.py install 

From now on, this WorkStyle directory will be described to be WORKSTYLE_HOME.

Then, WORKSTYLE_HOME/settings.py is edited according to environment. (Please edit and save by utf-8.)

  • Using PostgreSQL/MySQL
    First, create DB user and the database which are used by WorkStyle.
    Then edit settings.py.
    DATABASE_ENGINE: specify postgresql or mysql
    DATABASE_NAME: specify database name
    DATABASE_USER: specify database user
    DATABASE_PASSWORD: specify database password
    DATABASE_HOST: Set to empty string for localhost.
    DATABASE_PORT: Set to empty string for default.
  • Using SQLite3
    DATABASE_ENGINE: specify sqlite3
    DATABASE_NAME: path to database file

A setup without regards to the kind of database.
TIME_ZONE: Local time zone for this installation. All choices can be found here:http://www.postgresql.org/docs/current/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE
LANGUAGE_CODE: Language code for this installation. All choices can be found here:http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes
WORKSTYLE_BASE_DIR: your WorkStyle directory under Python's site-packages
TAG_TYPE_1 - TAG_TYPE_10: used as a name of tag classification, please give a suitable name. It can change at any time.

Create directory for fileupload named 'junk' under WORKSTYLE_ROOT/apps/workstyle/media/resources. 'junk' directory require Read and Write permission for user who run WebServer(or run django-fcgi).

4.Instllation of WorkStyle

The table which a Django framework uses by the following command is created in a database.

  django-admin.py init --settings=WorkStyle.settings 

The table which WorkStyle uses by the following command is created in a database.

  django-admin.py install workstyle --settings=WorkStyle.settings 

Since SQL for INDEX creation of a database is outputted by the following command, please apply to a database if needed.

  django-admin.py sqlindexes --settings=WorkStyle.settings 

5.The check so far

The development server of django starts by the following command (a stop is Ctl+c). The number 9000 can be changed into arbitrary ports.

  django-admin.py runserver 9000 --settings=WorkStyle.settings 

Open http://host:9000/WorkStyle/ by the browser. When you do not make it cooperate with apache or lighttpd, it is an end now.

6.setup of apache+mod_rewrite+mod_fastcgi+fastcgi

Stop development server.
django-fcgi.py is arranged to the place along which PATH passed.
When Python is not 2.4 or more, install flup.

svn co http://svn.saddi.com/flup/trunk flup 
cd flup/ 
sudo python setup.py install 
cd ..; sudo rm -rf flup 

Create a file named django.fcgi to directly under a document route (it is a different file although the name resembles django-fcgi.py).just touch.

Then edit httpd.conf.
FastCgiExternalServer: specify the full path to django.fcgi, host and port.
Servername: specify the server name
Alias: specify full path to resources directory.

FastCgiExternalServer PATH/django.fcgi -host 
<VirtualHost *:80> 
    Servername django.loc 
    ErrorLog /var/log/httpd/django-error.log 
    CustomLog /var/log/httpd/django-access.log combined 
    DocumentRoot /var/www/ 
    RewriteEngine On 
    RewriteRule ^/WorkStyle/resources - [PT] 
    RewriteRule ^/(WorkStyle.*)$ /django.fcgi/$1 [L] 
    Alias /WorkStyle/resources "WORKSTYE_HOME/apps/workstyle/media/resources" 

Since the path to python is described on top of django-fcgi.py, please correct, when environment is different.
fastcgi is started by the following command. Then restart apache.

django-fcgi.py --settings=WorkStyle.settings --host --port 9000 --daemon 

Open http://host/WorkStyle/ by the browse.

SourceForge.net Logo