open a ticket http://code.google.com/p/web2py/issues/detail?id=1812&sort=-id
On Monday, December 9, 2013 3:38:18 PM UTC-6, Massimo Di Pierro wrote: > > Strange. Please open a ticket about this. > > On Monday, 9 December 2013 09:25:57 UTC-6, P T wrote: >> >> file attached >> >> On Monday, December 9, 2013 9:17:29 AM UTC-6, P T wrote: >>> >>> That works fine, but I have another problem - the order of columns is >>> different in View and Edit (see attached screenshots). How can I make the >>> columns present in "Edit" the same order as the View? >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> On Monday, December 9, 2013 8:38:11 AM UTC-6, P T wrote: >>>> >>>> Thank you! >>>> >>>> On Monday, December 9, 2013 7:12:32 AM UTC-6, Massimo Di Pierro wrote: >>>>> >>>>> assuming the fields exist: >>>>> >>>>> fields=[db.monthly_projections.employee, db.monthly_projections.id, db >>>>> .monthly_projections.costcode] >>>>> for row in db(db.months).select(): >>>>> fields.append(db.monthly_projections[row.effort_month.strftime( >>>>> '%b_%Y')]) >>>>> >>>>> or >>>>> >>>>> fields=[db.monthly_projections.employee, db.monthly_projections.id, db >>>>> .monthly_projections.costcode] + \ >>>>> [db.monthly_projections[row.effort_month.strftime('%b_%Y')] for >>>>> row in db(db.months).select()] >>>>> >>>>> >>>>> On Sunday, 8 December 2013 23:40:10 UTC-6, P T wrote: >>>>>> >>>>>> I am dynamically creating the fields in a table from entries in >>>>>> another table. I am using SQLFORM.grid to view/edit the table. >>>>>> >>>>>> For the grid, the following field list works fine: >>>>>> fields=[db.monthly_projections.employee, db.monthly_projections.id >>>>>> , db.monthly_projections.costcode, >>>>>> db.monthly_projections.Dec_2013, db.monthly_projections. >>>>>> Jan_2014, db.monthly_projections.Feb_2014] >>>>>> >>>>>> But, the problem is I don't know the complete field list ahead of >>>>>> time. So, I am using this instead: >>>>>> fields=[db.monthly_projections.employee, db.monthly_projections.id >>>>>> , db.monthly_projections.costcode] >>>>>> for row in db(db.months).select(): >>>>>> fields.append('db.monthly_projections.'+ row.effort_month.strftime >>>>>> ('%b_%Y')) >>>>>> >>>>>> This is giving an error >>>>>> <type 'exceptions.AttributeError'> 'str' object has no attribute >>>>>> 'tablename' >>>>>> >>>>>> On debugging, I see that the fields is created as three >>>>>> gluon.dal.Fields and three strings >>>>>> >>>>>> fields >>>>>> [<gluon.dal.Field object at 0x0000000005414470>, >>>>>> <gluon.dal.Field object at 0x00000000046D7A58>, >>>>>> <gluon.dal.Field object at 0x0000000009F15D30>, >>>>>> 'db.monthly_projections.Dec_2013', >>>>>> 'db.monthly_projections.Jan_2014', >>>>>> 'db.monthly_projections.Feb_2014'] >>>>>> >>>>>> So, I changed the definition of fields to: >>>>>> fields=[db.monthly_projections.employee, db.monthly_projections.id >>>>>> , db.monthly_projections.costcode] >>>>>> for row in db(db.months).select(): >>>>>> fields.append(Field('db.monthly_projections.'+ row.effort_month. >>>>>> strftime('%b_%Y'))) >>>>>> >>>>>> and this gives an error: >>>>>> <type 'exceptions.SyntaxError'> invalid table or field name: >>>>>> db.monthly_projections.Dec_2013 >>>>>> So, in short, how do I build the field list from string for >>>>>> SQLFORM.grid? >>>>>> >>>>>> Thanks for your help! >>>>>> PT >>>>>> >>>>> -- 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.