Hi.
I'm new to Django, and I'm working my way into Django by going through the nice Djangoproject.com turorial.
I'm trying to find out whether Django is the right tool for my task, which is maybe a bit unusual for Django.
My task is to build a web interface to a database for an calculation tool made in Python.
The database will contain maybe up to 100.000 pieces of data (mostly decimal fields), and the tool will import this data, do some calculations and write some results back to the database.
My Django web interface should allow the user to view, add, delete and edit the data in the database, and view the results with tables and charts.
The data is organised in various chunks:
- "Sets" which lend themselves very nicely to Django models, i.e. HouseholdType, Item, City, Month, Year
- "Maps", which are user defined ManyToOne or ManyToMany relations between the various sets (can probably be worked into the "sets" models)
- "Data Tables", which contains the main load of data, having the "sets" as foreign keys (e.g. "Demand" for each HouseholdType, Item, City, Month and year)
- "Results tables", calculated by the tool but in structure quite similar to the "Data tables"
I will have roughly 10 sets, 10 maps. 20-30 data tables and 10-20 result tables.
I understand that putting all these into a one app will create biiig models.py and views.py files, which is probably a bad idea.
On the other hand, splitting the sets, maps and tables into several apps does not seem to be an ideal solution either.
All the tables and the maps will be models that have foreign keys to the "sets" models.
My understanding so far is, that it is also bad to have a lot of interlinkage between the various apps.
An intermediate solution might be, that if I make a "Sets" app containing all the models that are going to be primary key in the other apps, then the interlinkages between the apps is somewhat simplified.
Any thoughts or advice?
cheers, Mikkel