thank you for your question and answer. what is your ajax code. i cannot find how to do it?
2016-02-13 19:33 GMT+02:00 Mamisoa Andriantafika <mami...@gmail.com>: > Ok here is my answer: > > # RESTFUL CRUD > @request.restful() > def api(): > import json > response.view = 'generic.json' > def GET(tablename,**vars): # GET VALUES > if not tablename=='test': raise HTTP(400) > if request.vars.search == None: > rows= db(db.test).select() > test = row2json(tablename,rows) > return test > else : > rows = db(db.test.testname.contains(vars['search'])).select() > test = row2json(tablename,rows) > return test > def DELETE(tablename,id): > if not tablename=='test': raise HTTP(400) > return db(db.test.id == id).delete() > def PUT(tablename,record_id,**vars): > if not tablename=='test': raise HTTP(400) > if record_id=='': raise HTTP(400) > return db(db.test._id==record_id).update(**vars) > def POST(tablename,**vars): > if not tablename=='test': raise HTTP(400) > return db.test.validate_and_insert(**vars) > return locals() > > def row2json (tablename,rows): > import json > rows = rows.as_list() > # concat = '{ "Result": "OK", "'+tablename+'": [' > concat = '{ "Result": "OK", "Records": [' > # concat = '{ "'+tablename+'": [' > for row in rows: > concat = concat + json.dumps(row)+"," > concat = concat.strip(',') > concat = concat + ']}' > return concat > > > Mike > > > Le samedi 13 février 2016 14:59:53 UTC+1, Mamisoa Andriantafika a écrit : > >> Hi, >> >> I'm trying to ajust the output of the REST services. >> >> Here is my code: >> >> @request.restful() >> def api(): >> response.view = 'generic.json' >> def GET(tablename,**vars): # GET VALUES >> if not tablename=='test': raise HTTP(400) >> if request.vars.search == None: >> return dict(test= db(db.test).select()) >> else : >> return dict(test = db(db.test.testname.contains(vars['search' >> ])).select()) >> def DELETE(tablename,id): >> if not tablename=='test': raise HTTP(400) >> return db(db.test.id == id).delete() >> def PUT(tablename,record_id,**vars): >> if not tablename=='test': raise HTTP(400) >> if record_id=='': raise HTTP(400) >> return db(db.test._id==record_id).update(**vars) >> def POST(tablename,**vars): >> if not tablename=='test': raise HTTP(400) >> return db.test.validate_and_insert(**vars) >> return locals() >> >> For example, the GET method gives me this output: >> {"test": [{"testname": "test18", "id": 4, "testvalue": "119"}, { >> "testname": "test18", "id": 10, "testvalue": "119"}, {"testname": >> "test19", "id": 11, "testvalue": "edt125"}, {"testname": "lmklm", "id": >> 19, "testvalue": "opopo"}, {"testname": "test19", "id": 20, "testvalue": >> "edt125"}, {"testname": "lmkhjkhj", "id": 21, "testvalue": "lmmmjkhjk"}, >> {"testname": "jj", "id": 22, "testvalue": "lmmmjkhjkghgh"}, {"testname": >> "jjhhh", "id": 23, "testvalue": "hjhgj"}, {"testname": "jjhhhjhgjh", "id" >> : 24, "testvalue": "hjhgjhh"}]} >> >> *How coud I get this output:* >> >> {*"Result" : "OK"*, "test": [{"testname": "test18", "id": 4, "testvalue": >> "119"}, {"testname": "test18", "id": 10, "testvalue": "119"}, {"testname" >> : "test19", "id": 11, "testvalue": "edt125"}, {"testname": "lmklm", "id": >> 19, "testvalue": "opopo"}, {"testname": "test19", "id": 20, "testvalue": >> "edt125"}, {"testname": "lmkhjkhj", "id": 21, "testvalue": "lmmmjkhjk"}, >> {"testname": "jj", "id": 22, "testvalue": "lmmmjkhjkghgh"}, {"testname": >> "jjhhh", "id": 23, "testvalue": "hjhgj"}, {"testname": "jjhhhjhgjh", "id" >> : 24, "testvalue": "hjhgjhh"}]} >> >> Or, another issue,* the output without the "test":* >> {"testname": "test18", "id": 4, "testvalue": >> ... > > -- > 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/d/optout. > -- 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/d/optout.