Thanks,
Anthony already helped me we that, this first thread jumped by mistake.
But there was a problem with posting into reference fields, so Anthony 
suggested that I will do something like that , but I am getting the same 
"long" error:

ValueError: invalid literal for long() with base 10: 'ergergrg'

and this is the controller:

    def POST(**post_params):
        if db(db.auth_user.api_key == post_params['api_key']).count():
            #post_params['f_test'] = db(db.t_tests.f_test_name ==
             #                 
 post_params['f_test']).select(db.t_tests.id).first().id
            #post_params['f_project'] = db(db.t_projects.f_project_name ==
             #                 
 post_params['f_project']).select(db.t_projects.id).first().id
            post_params['f_platform'] = db(db.t_types.f_platform_name ==
                                
post_params['f_platform']).select(db.t_types.id).first().id
            #post_params['f_device'] = db(db.t_devices.f_device_name ==
             #                 
 post_params['f_device']).select(db.t_devices.id).first().id

            return t.validate_and_insert(**t._filter_fields(post_params))
        else:
            raise HTTP(400)
    return locals()

Apologize for the confusion I made.
Thanks.





On Thursday, January 30, 2014 12:30:52 PM UTC+2, Avi A wrote:
>
> Hi,
> I am trying something like that:
> #on one local script instance:
> import requests
>
> test_params = {'api_key': 'api_key', 'test': 'test', 'f_platform': 
> 'platform', 'f_device': 'device', 'f_steps': '10',
>                'f_matches':'7', 'f_missmatches': '3', 'f_missing': '0'}
> r = requests.post('http://127.0.0.1:8000/qatests/api', params=test_params)
>
> #and the api function:
>
> @request.restful()
> def api():
>     response.view = 'generic.'+request.extension
>     def GET(search):
>         pass
>     clients = db(db.auth_user).select(db.auth_user.api_key)
>     t = db.t_tests_results
>     def POST(**post_params):
>         for client in clients:
>             if client.api_key == post_params.api_key:
>                 return t.validate_and_insert(post_params.test,
>                                         post_params.f_platform, 
> post_params.f_device,
>                                         post_params.f_steps, 
> post_params.f_matches,
>                                         post_params.f_missmatches, 
> post_params.f_missing)
>             else:
>                 raise HTTP(400)
>
> It's not working... Any help?
> Thanks.
>
>
>
>
>
>
>
>
>

-- 
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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to