summaryrefslogtreecommitdiff
path: root/recipes/content/@staticmethod_and_@classmethod.markdown
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/content/@staticmethod_and_@classmethod.markdown')
-rw-r--r--recipes/content/@staticmethod_and_@classmethod.markdown52
1 files changed, 0 insertions, 52 deletions
diff --git a/recipes/content/@staticmethod_and_@classmethod.markdown b/recipes/content/@staticmethod_and_@classmethod.markdown
deleted file mode 100644
index de2f995..0000000
--- a/recipes/content/@staticmethod_and_@classmethod.markdown
+++ /dev/null
@@ -1,52 +0,0 @@
-@staticmethod and @classmethod
-==============================
-#set $staticmethod = '[@staticmethod](http://docs.python.org/library/functions.html#staticmethod)'
-#set $classmethod = '[@classmethod](http://docs.python.org/library/functions.html#classmethod)'
-
-Refer the Python's documentation if you're unfamiliar with either
-$staticmethod or $classmethod and their uses in Python, as they
-pertain to their uses in Cheetah as well. Using $staticmethod it's
-trivial to create *utility templates* which are common when using
-Cheetah for web development. These *utility templates* might contain
-a number of small functions which generate useful snippets of markup.
-
-For example:
-
- \#def copyright()
- \#import time
- © CheetahCorp, Inc. \$time.strftime('%Y', time.gmtime())
- \#end def
-**Figure 1, util.tmpl**
-
-Prior to version **v2.2.0** of Cheetah, there wasn't really an easy means
-of filling templates with bunches of these small utility functions. In
-**v2.2.0** however, you can decorate these methods with `\#@staticmethod`
-and use "proper" Python syntax for calling them, **fig 1** revisited:
-
- \#@staticmethod
- \#def copyright()
- \#import time
- © CheetahCorp, Inc. \$time.strftime('%Y', time.gmtime())
- \#end def
-**Figure 1.1, util.tmpl**
-
-With the addition of the $staticmethod decorator, the `copyright()`
-function can now be used without instantiating an instance of the `util`
-template class. In effect:
-
- \#from util import util
-
- <strong>This is my page</strong>
- <br/>
- <hr noshade/>
- \$util.copyright()
-**Figure 2, index.tmpl**
-
-
-This approach is however no means to structure anything complex,
-$staticmethod and $classmethod use in Cheetah is not meant as a
-replacement for properly structured class hierarchies (which
-Cheetah supports). That said if you are building a web application
-$staticmethod/$classmethod are quite useful for the little snippets
-of markup, etc that are needed (Google AdSense blocks, footers,
-banners, etc).