hi,
sorry for being to cryptic.
In [1]: def foo(*args,**kwargs):
...: print vars
...:
...:
In [2]: foo()
<built-in function vars>
In [3]: def bar(*args,**vars):
...: print vars
...:
...:
In [4]: bar()
{}
ref: http://docs.python.org/library/functions.html#vars
as I said, it is cosmetic. I believe it is a bad idea to give variable
a name which matches name of the build-in function
cheers,
pawel
On Thu, Jun 9, 2011 at 3:26 PM, Massimo Di Pierro
<[email protected]> wrote:
> I do not understand. :-(
>
> On Jun 9, 3:21 am, Pawel Jasinski <[email protected]> wrote:
>> hi,
>> it is cosmetic, but can be a pain for someone no so familiar with
>> python.
>> In examples for restful api:
>>
>> def index():
>> def GET(*args,**vars):
>> patterns = [
>> "/persons[person]",
>> "/{person.name.startswith}",
>> "/{person.name}/:field",
>> "/{person.name}/pets[pet.person]",
>> "/{person.name}/pet[pet.person]/{pet.name}",
>> "/{person.name}/pet[pet.person]/{pet.name}/:field"
>> ]
>> parser = db.parse_as_rest(patterns,args,vars)
>> if parser.status == 200:
>> return dict(content=parser.response)
>> else:
>> raise HTTP(parser.status,parser.error)
>> def POST(table_name,**vars):
>> if table_name == 'person':
>> return db.person.validate_and_insert(**vars)
>> elif table_name == 'pet':
>> return db.pet.validate_and_insert(**vars)
>> else:
>> raise HTTP(400)
>> return locals()
>>
>> after copy paste everything is ok, but the problem is waiting to
>> happen ...
>> vars hides built-in vars function.
>>
>> cheers,
>> pawel