Changes between Version 3 and Version 4 of AjaxHelpers


Ignore:
Timestamp:
06/29/07 06:21:13 (8 years ago)
Author:
anonymous
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AjaxHelpers

    v3 v4  
    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 %}
    17 arg1,arg2,
    18 arg3,
    19 kwarg1=value1,
    20 kwarg2=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",
    39 url='?format=ahah',
    40 update='results',
    41 delay=0.3,
    42 method='get',
    43 complete="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