Looks like each set of inputs has the same input names, so you get back a 
list for each variable. I believe browsers preserve the order of input 
values for inputs with the same name, so you should be able to just run a 
loop and do a separate insert for each set of items in the lists (i.e., on 
the first loop, extract element [0] from each list, on the second loop, 
extract element [1], etc.).

Anthony

On Sunday, June 5, 2016 at 8:54:47 PM UTC-4, ktesr123...@gmail.com wrote:
>
> I am getting request.vars as shown below when I print it
>
> vars: <Storage {'opt1': ['3', '3'], 'opt2': ['12 ', '18 '], 'opt3': ['1', 
> '1'], 'txt1': ['1', '1']}>
>
> these values are given as input from user interface and it has 2 rows, 
> each row has 3 dropdown and 1 text box
>
> now how do I read each item and insert into database, in the database 
> there is a table that has 4 columns, as per my requirement now it has to 
> insert 2 records in that table
>
> On Friday, June 3, 2016 at 2:21:48 PM UTC-6, Anthony wrote:
>
>> On Friday, June 3, 2016 at 12:35:49 PM UTC-4, ktesr...@gmail.com wrote:
>>>
>>> it is a single select, the values are populated from controller into a 
>>> view dynamically in jquery
>>>
>>
>> OK, so what's wrong with your current approach? What are you trying to 
>> achieve? Hard to help without seeing your code (e.g., model definitions, 
>> etc.). Also, why are you using .getlist for a variable that isn't a list, 
>> and then just extracting the first element (which you would get if not 
>> using .getlist)?
>>
>> Anthony
>>
>>
>>> On Friday, June 3, 2016 at 6:32:34 AM UTC-6, Anthony wrote:
>>>>
>>>> Hard to say because it's not clear (a) what kind of data are in opt1, 
>>>> opt2, etc. (are they multi-select widgets producing lists or just single 
>>>> selects?) and (b) how the form inputs map to your database fields.
>>>>
>>>> Anthony
>>>>
>>>> On Thursday, June 2, 2016 at 11:55:13 PM UTC-4, ktesr...@gmail.com 
>>>> wrote:
>>>>>
>>>>> Anthony
>>>>>
>>>>> I wanted to iterate all the values from request.vars these values are 
>>>>> passed using ajax function from View, in the View each row will have 3 
>>>>> drop 
>>>>> downs and 1 textbox to take input from user
>>>>> there can be minimum 1 row. I am passing all the control names thru 
>>>>> ajax function
>>>>>
>>>>> View
>>>>> =======
>>>>> <script>
>>>>> /* jquery that builds html form written here */
>>>>>
>>>>> ajax('{{=URL('insert_data')}}',['opt1','opt2','opt3','txtt1'],'target'); 
>>>>> // opt1, opt2 and opt3 are dropdown control names and txt1 is the name if 
>>>>> textbox control all are html controls dynamically crated using jquery
>>>>>
>>>>> </script>
>>>>> <div id=...></div>
>>>>> <div id='target'></div>
>>>>>
>>>>> Controller
>>>>> ==========
>>>>> def insert_timesheet():
>>>>>  
>>>>>  orglist = request.vars.getlist("opt1")
>>>>>  response.flash = str(orgval)
>>>>>
>>>>>  ##db.Table.insert(field1=opt1[0],.....)
>>>>>  return locals()
>>>>>
>>>>>
>>>>>
>>>>> On Thursday, June 2, 2016 at 7:34:04 PM UTC-6, Anthony wrote:
>>>>>
>>>>>> Please show some code and explain exactly what you want to do. To get 
>>>>>> a particular value from request.vars, just do 
>>>>>> request.vars.name_of_variable.
>>>>>>
>>>>>> Anthony
>>>>>>
>>>>>> On Thursday, June 2, 2016 at 8:07:13 PM UTC-4, ktesr...@gmail.com 
>>>>>> wrote:
>>>>>>>
>>>>>>> I am getting selected values from View to Controller using 
>>>>>>> request.vars
>>>>>>>
>>>>>>> I can see the values are coming as key value pair but not able to 
>>>>>>> figure out how to read each value and insert them in DB
>>>>>>>
>>>>>>>
>>>>>>>

-- 
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.

Reply via email to