Hi Massimo,

I just came up with a handy myapp/views/generic.load, and I wonder
whether you will like to accept it as part of web2py scaffold. It is
already self-documented.


<!-- Start of the generic.load -->


{{ '''
With this generic.load file, you can use same action to serve two
purposes.

Example modified from http://www.web2py.com/AlterEgo/default/show/252:

def index():
    return {
        'part1':'hello world',
        'part2': LOAD(
            url=URL(r=request,f='auxiliary.load'), # Notice the
".load" extention
            ajax=True),
        }

def auxiliary():
    form=SQLFORM.factory(Field('name'))
    if form.accepts(request.vars):
        return {'': "Hello %s" % form.vars.name}
    return {'':form} # Need NOT to write it as "return form" any more!

>From now on, single auxiliary() can serve two purposes:
http://.../auxiliary.load  serves as a raw component LOADed by other
action
http://.../auxiliary       serves as a normal html page as usual

# PS: Please keep all above explanation for people to know when and
how to use it.
# License: Public Domain
# Author: Iceberg at 21cn dot com
'''
}}

{{ # Does NOT extend layout.html, purposely.}}
{{response.headers['Content-Type']='text/html'}}
{{if len(response._vars)==1 and not response._vars.keys()[0]:}}
  {{=BEAUTIFY(response._vars.values()[0])}} {{ # To bypass the silly
colon }}
{{else:}}
  {{=BEAUTIFY(response._vars)}}
  {{pass}}

Reply via email to