On Thursday, May 7, 2015 at 12:12:20 PM UTC-7, goome wrote:
>
> Thank you for your help Stifan. 
> The problem here is that i need to let the user choose among some 
> value gotted from the excel file he gave as input. 



Do you need to do this before adding anything from the file to the database?
For instance, only a subset of the data in the file is to be committed?

This could probably be done on the client side with javascript.  There are 
some javascript tools 
that some of the other posters use for data management.
Joe Barnhart has this recommendation:

> The jQuery Datatables library is very impressive.  It handles sorting, 
> filtering, displaying of data in all forms.  Its really worth a look at 
> http://datatables.net  My application is very data-centric and I use a 
> LOT of tables, so I built some datatable factory methods to help me.
>
<URL:https://groups.google.com/d/msg/web2py/fj_UhjPmhK0/arM06tukVOgJ>
I don't know what you need to do to feed it client data instead of server 
data.

If you want to do this on the server side instead, my first thought is to 
[upload the file], import it via CSV import into a *temporary table*, and 
then use the data in the temporary table to create the form (SQLFORM, or 
its grid offspring), and when you process the form update the permanent 
table.

 

And i should do 
> this meanwhile writing other files.


I'm not sure what this means.  Do you need to have multiple outputs based 
on the data, or do you need to multiple threads to speed up the processing?


> How can i do this? 
> Make all this stuff as an ajax function called after the user select 
> the file input? 
>

You could use AJAX/components to provide the view into the temporary table, 
if you wanted it to appear on the same page as the input form for the 
filename.  If you preferred to redirect, then anything you weren't ready to 
forget from the filename form could be stored in the session, I think.
 

> Any easiest way? 
> Thanks a lot 
>
>
I say this with having done just the littlest bit with forms, and just a 
teeny bit more with AJAX, and not much with the new-fangled tools that 
javascript gurus are throwing at ^W^W offering us.

Good luck!

/dps
(to read the weak joke above, recall what CTRL-W does on the BASH command 
line)
 

>
> 2015-05-07 20:56 GMT+02:00, 黄祥 <[email protected] <javascript:>>: 
> > if you use sqlform.factory, i think you should do the insert data from 
> > sqlform.factory to the table manually. 
> > e.g. taken from 
> > 
> http://web2py.com/books/default/chapter/29/07/forms-and-validators#SQLFORM-factory
>  
> > 
> > & modified it 
> > def form_from_factory(): 
> >     form = SQLFORM.factory( 
> >         Field('your_name', requires=IS_NOT_EMPTY()), 
> >         Field('your_image', 'upload')) 
> >     if form.process().accepted: 
> >         response.flash = 'form accepted' 
> >         db.customer.insert(**db.customer._filter_fields(form.vars) ) 
> >     elif form.errors: 
> >         response.flash = 'form has errors' 
> >     return dict(form=form) 
> > 
> > another thing, i think you can use another like sqlform, or sqlform.grid 
> > 
> > best regards, 
> > stifan 
> > 
> > -- 
> > 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 a topic in the 
> > Google Groups "web2py-users" group. 
> > To unsubscribe from this topic, visit 
> > https://groups.google.com/d/topic/web2py/c247sPk5ALU/unsubscribe. 
> > To unsubscribe from this group and all its topics, send an email to 
> > [email protected] <javascript:>. 
> > 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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to