Thanks for the explanation.
It stiil doesn't add records to the table.
Is there any where I can see the error? on the admin there are no errors, 
and not on the console where i post.
Thanks. 

On Thursday, January 30, 2014 7:00:32 PM UTC+2, Anthony wrote:
>
> On Thursday, January 30, 2014 10:33:19 AM UTC-5, Avi A wrote:
>>
>> Sorry for the "not working", I thought my mistake would be obvious.
>>
>
> Describing the specific failure often makes it easier to home in on the 
> source of the problem.
>  
>
>> First line: does it mean that this "if" statement knows to search the 
>> auth.user records till it finds a match?
>>
>
> Yes, it's simply a query to see if any auth_user records contain an 
> api_key that matches the one submitted. You were doing this query in 
> Python, when it is far more efficient to have the database do it for you 
> (particularly if you create a database index on the api_key field).
>  
>
>> and what is the .count() for?
>>
>
> When doing the query, there is no need to return the matching records -- 
> you just need to know whether any such records exist. So, it is more 
> efficient just to get a count of the records (if the count is 0, there are 
> no matching records).
>  
>
>> Second line: 
>> t._filter_fields(**post_params)
>> Should work assuming the key on the url params matches exactly the field 
>> name on the table?
>>
>
> Yes, that assumes the URL parameters match the field names of the table. 
> Note, ._filter_fields() simply removes any keys from the dictionary that 
> don't match any of the field names in the table (in this case, it would 
> remove the api_key key, since that's not part of the db table). You could 
> also manually remove any extra fields from the dictionary. For example:
>
> if db(db.auth_user.api_key == post_params.pop('api_key')).count():
>     return t.validate_and_insert(**post_params)
>
> post_params.pop('api_key') extracts the api_key value from post_params and 
> then removes that key/value from post_params, leaving only the keys 
> associated with fields in the db table.
>
> Anthony
>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to