Forum OpenACS Q&A: Response to Top 20 DOs and DONTs while developing OpenACS

Collapse
Posted by Stephen . on
The section about Tcl in ADP's and HTML in Tcl code; how about some examples or alternatives here?  How should people achieve this?  Probably need something about when and why to register ADP tags, for example instead of calling a proc in an ADP; and when to use registered tags or included templates, instead of embedding HTML in Tcl.

The thing about return_url comes under the more general heading of naming.  For instance should it be mentioned that boolean variables have a _p affix?

When deleting queries from Tcl files perhaps we could replace the query with the literal string *SQL* rather than "" or {}.  If you make a mistake and the correct query can not be found from the .xql file, the blank error message can be a little confusing, but with *SQL* it's more obvious what has happened.

Why must plpgsql function parameters be prefixed with p_?  I don't remember seeing this used already in the toolkit, and we don't prefix Tcl parameter names with p_.  Variable names are prefixed with v_ because you can't assign a new value to a function parameter (right?) and so must use a new but simillarly named variable.

I know this is just a draft, but ultimately there probably needs to be a complete document describing how to create upgrade scripts, with a simple link to it explaining that it must be followed.  I think Jon Griffin's your man here...