You can also customize the edit form created by the grid in the usual ways (without creating your own form from scratch), including having custom view code or specifying an alternative view altogether.
Anthony On Friday, February 21, 2014 7:57:42 AM UTC-5, Luca Guerrieri wrote: > > Looks like it's my tie to post an answer :-)) > > To customize the edit form or new form in a SQLFORM.grid i put in the > controller, but exactly > before the sqlform.grid creation and with a return ... > > if request.args(0) in ['edit']: > response.flash=T("Edit form") > response.view = 'default/editclist.html' > form = SQLFORM(db.mylist, db.mylist(request.args(2))) > if form.process().accepted: > response.flash = 'Update form accepted' > elif form.errors: > response.flash = 'Update form rejected, there are errors' > return dict(form=form) > > in this way I can have an edit or whatever i need ... customized ... > my custom view will be under default the editclist.html in which there > will be a {{=form}} > > > p.s.: now I'm fighting with a links=links customization ... but this is > another question :-)) > > > Il giorno giovedì 20 febbraio 2014 16:35:17 UTC+1, Luca Guerrieri ha > scritto: >> >> Dear all, >> after some new things i have understood on web2py I'm not able to find >> this solution : >> >> I've a sqlform.grid which becomes from a 2 tables query >> >> ... some customization code .... >> >> form = SQLFORM.grid(query=query, left = db.mylist.on(db.person.id == >> db.mylist.name ) , field_id = (db.mylist.id), fields=fields, >> headers=headers, orderby=default_sort_order, create=False, deletable=False, >> editable=True, showbuttontext=False, maxtextlength=64, paginate=100, >> user_signature=False, searchable = True, details = True) >> >> >> >> db.define_table('person', >> Field('name', 'string'), >> Field('dob', length=10), >> Field('address', 'text', length=255), >> Field('countryname'), >> ) >> >> db.define_table('mylist', >> Field('object', 'string', length=6, required=True), >> Field('name', db.person), >> Field('zip', length=5, required=False), >> ) >> >> When i click on the edit button related to a row (the pencil at the end >> of every record row) , I would edit that values through a form on which i >> can find >> the values viewed in the row. That is possible for all the values become >> from the first table (cardlist) but not for that become from the second >> table (person) >> >> precisely i can read the ID of the second table but not the value >> referred to >> eg : editing the row I have a form with : object, zip and instead the >> name of the person its id ... >> >> There is a way to customize the edit form connected to the sqlform.grid >> item ? >> >> Thank You >> >> >> -- 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.