====== Django developer guidelines ====== * Views must not raise an exception (except raising http states when necessary - i.e. RESTful API) * User should be notified about operation result via django.contrib.messages * All errors and exceptions must be handled and logged in the functional module and module interface should return True, False or value * All internal methods in functional modules (those not meant to be called outside module) should start with _ those methods are not imported when using from module import * (for further reference see [[http://www.python.org/dev/peps/pep-0008/|PEP 8]]) * Always use named urls and use reverse valuation both in templates and views e.g.:reverse('website:cronOverview', args=(webSiteID,) or Storage