You use SQLFORM.factory if you want a form not connected to the database. 
You use SQLFORM.grid if you want to show database records in tabular form.

On Saturday, 19 October 2013 11:03:23 UTC-5, Wonton wrote:
>
> Hello again!
>
> After some reading about SQLForm, obviously that's what I need. But since 
> there are some different options I would like to choose the correct one. 
> For my case, should I use a SQLForm.grid or a SQLForm.factory()? And in the 
> case of using a grid, is it posible to have a select list (something like a 
> drop-down list) for each row or I have to use the "Update" button for each 
> one?
>
> Kind regards!
>
> On Friday, October 18, 2013 10:28:47 PM UTC+2, Wonton wrote:
>>
>> Thank you very much Tim!!
>>
>> I didn't even consider this posibility. It seems that it's what I was 
>> looking for. I will try it.
>>
>> Kind regards!
>>
>> On Friday, October 18, 2013 3:56:43 AM UTC+2, Tim Richardson wrote:
>>>
>>> You are doing this the really hard way, I think.
>>> If you read the book a bit more you will discover web2py's built-in 
>>> forms.
>>> Probably you should use SQLFORM.
>>> This means you do all the coding in the controller. Behind the scenes, 
>>> SQLFORM will create a variable which contains the HTML to display the form, 
>>> and it also includes the logic to update the database table. 
>>>
>>> While you are developing, you can rely on the "developer" or generic 
>>> views, which means you don't even need to worry about making a view until 
>>> you are ready.
>>>
>>> In other words, you can do all of this in one line (in the controller)
>>>
>>> form = SQLFORM(db.matches)
>>>
>>> (assuming you have setup up your table definition well). 
>>>
>>>
>>> Or you should read about SQLFORM.grid, which may be more what you want. 
>>> It starts by displaying all the records in a table, and then lets the user 
>>> choose which rows to edit. It then automatically generates an SQLFORM for 
>>> that row. Still only one line :)
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Friday, 18 October 2013 10:22:40 UTC+11, Wonton wrote:
>>>>
>>>> Hello,
>>>>
>>>> I've been working with web2py controllers to connect with my database 
>>>> and I haven't use views so far, so I don't know if what I'm trying to do 
>>>> is 
>>>> very wrong. In that case, please, tell me ;-).
>>>>
>>>> Suppose I have this:
>>>>
>>>> controllers/mycontroller.py:
>>>>
>>>> def show_matches():
>>>>     matches = db(db.matches.id > 0).select()
>>>>     return dict(matches=matches)
>>>>
>>>> views/show_matches.html:
>>>>
>>>> {{extend 'layout.html'}}
>>>> <h1>MATCHES</h1>
>>>> <table>
>>>> <th>
>>>>     <th>MATCH</th> 
>>>>     <th>TEAM1</th>
>>>>     <th>TEAM2</th>
>>>> </th>
>>>> {{for match in matches:}}
>>>> <tr>
>>>>     <td>{{=match['team1']}} vs. {{=match['team2']}}</td>
>>>>     <td>
>>>>         <forms> 
>>>>             <select style="width:80px;"> 
>>>>               <option>0</option>
>>>>               <option>1</option>
>>>>               <option>2</option>
>>>>               <option>+2</option>
>>>>             </select>
>>>>         </form>
>>>>    </td>
>>>>     <td>
>>>>         <forms> 
>>>>             <select style="width:80px;"> 
>>>>               <option>0</option>
>>>>               <option>1</option>
>>>>               <option>2</option>
>>>>               <option>+2</option>
>>>>             </select>
>>>>         </form>
>>>>    </td>
>>>> </tr>
>>>> {{pass}}
>>>> </table>
>>>>
>>>>
>>>> I would like to include a button (with 'a' and 'onclick' I guess) at 
>>>> the bottom of the page so when the user clicks in it, all data selected in 
>>>> the forms are sent to mycontroller.py (to store_results_in_ddbb function).
>>>>
>>>> How could I read all this data and send it to a controller? Should I 
>>>> have only one <form> and all <select> components pointing to it through a 
>>>> 'form' tag? Should I have all select components with an 'id' tag and read 
>>>> the data through this tag?
>>>>
>>>> I'm a newbie with HTML (web frontend in general) so I hope I am not 
>>>> saying something very stupid ;-). 
>>>>
>>>> Any idea will be very appreciated. 
>>>>
>>>> Thank you very much and kind regards!
>>>>
>>>>

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