Repo Note:
The master
branch is an in development version of django-firebird. This may be substantially different from the latest
release of django-firebird
This version of django-firebird is working with fbd [1], therefore it will work only with firebird 2.x and later.
The stable version corresponds with django 1.11 and live into stable/1.11.x
branch.
The current master branch of this repository is being developed under django 2.0.x. For previous Django stable version check
the branch list of this repository.
fbd is the official stable python-firebird driver, also it has support for python 3.
[1] http://pypi.python.org/pypi/fdb/
- Python 2.7+ or Python 3.x
- Django 1.11.x
- fdb (http://pypi.python.org/pypi/fdb/)
Using pip
pip install django-firebird
From repository
git clone git://github.com/maxirobaina/django-firebird.git
cd django-firebird
sudo python setup.py install
Manual Instalation
Instructions for Ubuntu/Debian I assume you have installed django from source with python setup.py install
cd /usr/local/lib/python2.7/dist-packages
sudo git clone git://github.com/maxirobaina/django-firebird.git
sudo ln -s django-firebird/firebird firebird
cd /usr/local/lib/python2.7/dist-packages/django/db/backends
sudo ln -s /usr/local/lib/python2.7/dist-packages/django-firebird/firebird
Modify your setting.py
DATABASES = { 'default': { 'ENGINE' : 'firebird', 'NAME' : '/var/lib/firebird/2.5/data/django_firebird.fdb', # Path to database or db alias 'USER' : 'SYSDBA', # Your db user 'PASSWORD' : '*****', # db user password 'HOST' : '127.0.0.1', # Your host machine 'PORT' : '3050', # If is empty, use default 3050 #'OPTIONS' : {'charset':'ISO8859_1'} } }
- Some database migrations doesn't work by default. Sometimes is better make intermediate migrations for solve problems.
- Some Query Expressions doesn't work by default. We need to make some workaround, ie: Use Cast().
- Combined duration expressions need more research. No all combination of expressions works.
Code and issues is in GitHub:
https://github.com/maxirobaina/django-firebird
We also have a mailing list:
http://groups.google.com/group/django-firebird-dev
Why the change from kinterbasdb to fdb?
If you want to know more about the differences between fdb and kinterbasdb you can look at:
http://thread.gmane.org/gmane.comp.db.firebird.python/185/focus=187
http://pythonhosted.org//fdb/differences-from-kdb.html
If you still use kinterbasdb, the original google code repository has an updated django-firebird 1.4.x LTS version.