Version 4 (modified by 13 years ago) ( diff ) | ,
---|
Table of Contents
Tutorial
The following material from SahanaCamp 1.2 may be useful:
- Sahana Eden - Developer Environment (VM)
- Sahana Eden - Introduction to the Code
- Sahana Eden - Bug Reporting
- Sahana Eden - Localisation
- DeveloperQuickstart
Python
Model
Defines databases in: /models/module.py
The Models are loaded 1st within Web2Py processing, before the controllers.
So you can import any global modules/set any global variables here.
The Models are imported in alphabetical order, so we load the files which other modules depend on 1st, hence naming them appropriately:000_config.py
, 01_crud.py
, 02_pr.py
, 03_gis.py
, etc
Controller
Python functions in /controllers/module.py
e.g.
def list_records(): items = crud.select(table) return dict(items=items)
View
HTML/Javascript templates in /views/module/function.html
- these are normal HTML/JS files with the ability to add in Python code (e.g. variables) surrounded by brackets: {{ interpreted python here }}
- there should be an .html file available for each function in the module (name normally being the same as the function)
- these normally inherit from
views/layout.html
which also includes the JavaScript fromviews/*_ajax.html
- if there is no view defined then a default view will be displayed, which will show the values of all the data it can see, but not be formatted nicely
Static CSS/Javascript files are stored in /static