Changes between Version 4 and Version 5 of AjaxHelpers


Ignore:
Timestamp:
06/29/2007 08:54:27 AM (8 years ago)
Author:
Paul Bx <pb@…>
Comment:

reverted anonymous deletion

Legend:

Unmodified
Added
Removed
Modified
  • AjaxHelpers

    v4 v5  
     1(This is related to #1262, which is not a bug, so, it should be a wiki entry. However, I can't attach files because Akismet thinks I'm a spammer. Someone please attach here the file that's attached to #1262).
     2
     3=== What is it? ===
     4
     5    * Attached is an adaptation of the port of RoR's JavascriptHelpers (http://pylonshq.com/project/pylons/browser/RailsHelpers) by Ben Bangert to Django tag library.
     6
     7    * It also includes port of Eugene's LiveFilter?(dojo) to prototype (DelayedObserver in observer.js).
     8
     9=== Usage ===
     10
     11{{{
     12{% rails function_name (arg1,arg2,kwarg1=3,...) %}
     13
     14        or
     15   
     16{% rails function_name %}
     17arg1,arg2,
     18arg3,
     19kwarg1=value1,
     20kwarg2=value2,
     21 ...
     22{% endrails %}
     23}}}
     24
     25=== Usage Examples ===
     26
     27{{{
     28{% load railshelper %}
     29
     30{% rails link_to_function ("Greeing", "alert('Hello World')") %}
     31
     32{% rails link_to_remote %}
     33"Delete this post",
     34{'update':"posts",'url':"./destroy"}
     35{% endrails %}
     36
     37{% rails observe_form %}
     38"searchform",
     39url='?format=ahah',
     40update='results',
     41delay=0.3,
     42method='get',
     43complete="SEL.setup('product_list');",
     44{% endrails %}
     45}}}
     46
     47=== Issues ===
     48
     49    * Used exec to do the parameter parsing. So people may not like it, but this was the quickest way I could think of. External parameter is exec-ed only within a function argument:
     50
     51{{{
     52      def argparser(*args, **kws):
     53          return args, kws
     54      exec("args, kws=argparser("+param+")")
     55}}}
     56
     57      I could not think of any malicious thing to do in function argument but probably there are many. Please let me know.
     58
     59    * Easily modifiable to render passed parameter as django template.
     60    * Tested only "link_to_remote", "observe_form" in real web browser (IE, FF, Opera).
Back to Top