Skip to content

eeejay/bill_anarchy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bill Anarchy (is Order) is a Python/Django web-app for housemates to
use to split the bills.

It is like billmonk.com but free/open source software, under the AGPL
license.

To keep things light, we will use Sqlite for the database.


INSTALLATION
============

Setup
-----

(in ubuntu/debian)
sudo apt-get install python-django python-setuptools
sudo easy_install django xlwt

Testing
-------

python manage.py test # run tests
python manage.py runserver # run server locally

Authentication
--------------

Two authentication backends are supported, model (user/pass) and
Mozilla Persona. They could be used together, or one could be
disabled. To disable conventional user/pass authentication, remove
'django.contrib.auth.backends.ModelBackend' from
AUTHENTICATION_BACKENDS, to remove Persona, remove all lines
that mention "BrowserID" in settings.py.


----------
Migrations
----------

Changes to the model schema are somewhat difficult in Django.  Here
are some notes on how to make it a little bit easier::

    python manage.py dumpdata pay_bills >pay_bills_YYYY_MM_DD.json

Make changes to the schema::

    @@ -76,6 +79,7 @@ class Bill(Model):
         comment = TextField(blank=True)
         date = DateTimeField('transaction date', auto_now_add=True)
         group = ForeignKey(Group)
    +    is_void = BooleanField('is void?', default=False)

Drop the application tables, and then syncdb to load the migrated
tables::

    python manage.py sqlclear pay_bills |python manage.py dbshell
    python manage.py syncdb

Repopulated the database with the data you dumped::

    python manage.py loaddata pay_bills pay_bills_YYYY_MM_DD.json


LICENSE
=======

http://www.fsf.org/licensing/licenses/agpl-3.0.html

    <one line to give the program's name and a brief idea of what it does.>
    Copyright (C) <year>  <name of author>

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU Affero General Public License as
    published by the Free Software Foundation, either version 3 of the
    License, or (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU Affero General Public License for more details.

    You should have received a copy of the GNU Affero General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.

Releases

No releases published

Packages

 
 
 

Contributors

Languages