Hi Bruno,

I am not creating, I am trying to update...
The example record:

*A simple entry:*

*estadio.cod_estadio* *estadio.nome_estadio* *estadio.cidade**1**A Definir**A
Definir*

On Fri, Aug 10, 2012 at 3:25 PM, Bruno Rocha <[email protected]> wrote:

> Dirk posted this on web2pyslices...
>
> To PUT (=update) something, you need to call:
>
> curl -i -H "Accept: application/json" -X PUT --user user:pass -d
> "f_entry=something newest"
> http://127.0.0.1:8000/RT/default/api/entries/1.json
>
> with id=1 being an existing entry.
>
> So of course, PUT works as update... the 1.json refers to an existing
> record...
>
> If you want to create a new record you need to use POST, I think...
>
>
> On Fri, Aug 10, 2012 at 3:21 PM, Tito Garrido <[email protected]>wrote:
>
>> Version 1.99.4 (2011-12-14 14:46:14) stableRunning on Apache/2.2.17
>> (Unix) mod_wsgi/3.3 Python/2.7.3
>>
>> On Fri, Aug 10, 2012 at 11:00 AM, Massimo Di Pierro <
>> [email protected]> wrote:
>>
>>> Which web2py version?
>>>
>>>
>>> On Friday, 10 August 2012 08:39:40 UTC-5, Tito Garrido wrote:
>>>
>>>> Same error using locals()
>>>>
>>>> :(
>>>>
>>>> On Thu, Aug 9, 2012 at 5:23 PM, Bruno Rocha <[email protected]> wrote:
>>>>
>>>>> try to replace  return dict(GET=GET, POST=POST, PUT=PUT, DELETE=DELETE)
>>>>> with return locals()
>>>>>
>>>>> I dont know, but maybe its the problem
>>>>>
>>>>> On Wed, Aug 8, 2012 at 10:49 PM, Tito Garrido <[email protected]>wrote:
>>>>>
>>>>>> Hi folks,
>>>>>>
>>>>>> *I have a simple table:*
>>>>>>
>>>>>> *db.define_table('estadio',
>>>>>>     Field('cod_estadio','id'),
>>>>>>     Field('nome_estadio'),
>>>>>>     Field('cidade'),migrate=False) *
>>>>>>
>>>>>> *A simple entry:*
>>>>>>
>>>>>> *estadio.cod_estadio**estadio.nome_estadio* *estadio.cidade**1**A
>>>>>> Definir**A Definir*
>>>>>> and using Bruno's example in web2pyslice:
>>>>>>
>>>>>>
>>>>>>    1. @request.restful()
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>    2. def api():
>>>>>>    3.     response.view = 'generic.'+request.extension
>>>>>>    4.     def GET(*args,**vars):
>>>>>>    5.         patterns = 'auto'
>>>>>>    6.         parser = db.parse_as_rest(patterns,args**,vars)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>    7.         if parser.status == 200:
>>>>>>    8.             return dict(content=parser.response)
>>>>>>    9.         else:
>>>>>>    10.             raise HTTP(parser.status,parser.erro**r)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>    11.     def POST(table_name,**vars):
>>>>>>    12.         return db[table_name].validate_and_**insert(**vars)
>>>>>>    13.     def PUT(table_name,record_id,**var**s):
>>>>>>    14.         return db(db[table_name]._id==record_**id).update(**vars)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>    15.     def DELETE(table_name,record_id):
>>>>>>    16.         return db(db[table_name]._id==record_**id).delete()
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>    17.     return dict(GET=GET, POST=POST, PUT=PUT, DELETE=DELETE)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> *but when I try to:*
>>>>>> *
>>>>>> curl -i -H "Accept: application/json" -X PUT -d "nome_estadio='teste"
>>>>>> http://127.0.0.1:8080/ws/default/api/estadio/cod-estadio/1.json*
>>>>>>
>>>>>> *it returns:*
>>>>>>
>>>>>> HTTP/1.1 400 BAD REQUEST
>>>>>> Server: nginx
>>>>>> Date: Thu, 09 Aug 2012 01:41:44 GMT
>>>>>> Content-Type: text/html; charset=UTF-8
>>>>>> Connection: keep-alive
>>>>>> Set-Cookie: 
>>>>>> session_id_ws=xxxxxxxxxx-**65e0b712-7d93-4b21-a553-**d06ce06af2a2;
>>>>>> Path=/
>>>>>> Content-Length: 540
>>>>>>
>>>>>> invalid arguments<!-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**
>>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**
>>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**
>>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**
>>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**
>>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**
>>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**
>>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**
>>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx**xx
>>>>>> //-->
>>>>>>
>>>>>> *What am I missing here?
>>>>>>
>>>>>> Thanks in advance!*
>>>>>>
>>>>>>
>>>>>> --
>>>>>>
>>>>>> Linux User #387870
>>>>>> .........____
>>>>>> .... _/_õ|__|
>>>>>> ..º[ .-.___.-._| . . . .
>>>>>> .__( o)__( o).:_______
>>>>>>
>>>>>> --
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>  --
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>>
>>>> Linux User #387870
>>>> .........____
>>>> .... _/_õ|__|
>>>> ..º[ .-.___.-._| . . . .
>>>> .__( o)__( o).:_______
>>>>
>>>  --
>>>
>>>
>>>
>>>
>>
>>
>>
>> --
>>
>> Linux User #387870
>> .........____
>> .... _/_õ|__|
>> ..º[ .-.___.-._| . . . .
>> .__( o)__( o).:_______
>>
>> --
>>
>>
>>
>>
>
>  --
>
>
>
>



-- 

Linux User #387870
.........____
.... _/_õ|__|
..º[ .-.___.-._| . . . .
.__( o)__( o).:_______

-- 



Reply via email to