def mygrid(): if 'edit' in request.args: db.x.p.writable = False db.x.r.readable = db.x.r.writable = False else: db.x.p.readable = db.x.q.readable = db.x.r.readable = False return dict(grid=SQLFORM.grid(db.x, ...)
On Wednesday, March 19, 2014 3:41:09 PM UTC-4, Kiran Subbaraman wrote: > Thanks, that makes sense. > What am trying to do is this... > > *model* > db.define_table('x', > Field('p', type='string'), > Field('q', type='string'), > Field('r', type='text') > ) > > This will be displayed in a SQLFORM.grid, with the following caveats: > > 1. I do not want to see columns for p, q, and r, but rather format the > output in such way that p q r are concatenated.Therefore the grid will > look > like this: > |--p+q+r value--|--row buttons--| > 2. When I edit the row, the edit form should display: > p (in readonly mode) > q (in read/write mode) > r (is not displayed) > > > - For caveat 1, I achieved that with the grid's links={} option to > display what I need, in the format I needed it. Something like this links > = > [{'header':'Custom stuff', 'body':lambda row: .... }]. This also means > that > I set all the fields to readable=False. > - For caveat 2, I was trying the stuff mentioned in my original post > > > > > > > > On Thursday, March 20, 2014 12:51:12 AM UTC+5:30, Anthony wrote: >> >> The label is used to label an entire column, so it wouldn't make sense to >> calculate a different label for every record. What exactly are you trying >> to do? >> >> On Wednesday, March 19, 2014 2:54:22 PM UTC-4, Kiran Subbaraman wrote: >>> >>> Hello, >>> I am creating a SQLFORM.grid(), and in the update-form for that grid, I >>> want to display the label value by computing it. >>> >>> Basically, I have this: >>> >>> model: >>> db.define_table('x', >>> Field('p', type='string'), >>> Field('q', type='string') >>> ) >>> >>> >>> controller: >>> .... >>> if blah: >>> db.x.q.label = lambda row: row.p >>> ..... >>> >>> >>> The label is displayed like this '<function <lambda> at 0x0955FF30>' >>> Not sure if this is supported, or I need to change this code? >>> Any help? >>> >>> Thanks, >>> Kiran >>> >> -- 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.