Add zope tips for display in the footer/front page. Concrete, real-world tips are best.
Don't rely on debian zope packages (yet). For the love of god, don't depend on gentoo zope packages. Use the source tarball instead.
Use the source, Luke.
Separate logic, presentation and content. You will be happy you did.
Regard PythonScripts as design, not logic. Methods that change things belong on the object or in a tool, not in a script. (TTW developers can't change things ?)
If you are getting too clever with python code in PageTemplates or DTML, consider moving it to a PythonScript.
Copying and pasting a CMF content object resets the publish state to visible
. To preserve state, cut it instead.
Fast way to learn DTML: test on a non-plone dtml-enabled zwiki page.
For more detail on DTML, TAL and other errors: use the ErrorLog and EventLog
To solve DTML and TAL puzzles: check APIDocs; use zopectl debug
To monitor zope activity, set EventLog level to BLATHER and keep windows open running tail -f
on various ZopeLogs
To get an attribute without acquisition: obj.aq_base.attr_name
. In restricted python: obj.aq_explicit.attr_name
(but it's less thorough)
Enable tracebacks in /error_log and tail -f event.log to monitor errors
Zope 2.7's event log is not good for diagnosing startup problems - use runzope instead
TAL paths like some/where/here will call here if it's callable, but not some or where
Translations of Plone product actions must be in the plone
domain. Most plone products provide product-xx.po and plone-xx.po files.
mindlace: can't i push a dict onto the available names via < dtml-with > ?
jshell: you might have to do < dtml-with [name] mapping>
jshell: with < dtml-in>, you have to tell it mapping
in order for it to use the __getitem__ protocol instead of __getattr__. And dtml-with is a specialized dtml-in, IIRC
Click "help" at top-left for help on using this wiki. If you don't see it, click "full" first. * |
|