you are asking to python to evaluate a variable that doesn't exists.
It seems that you know the tablename and fields in advance (because
dblabels_en is somewhat filled already) so why can't you just
tablename = 'test1'
db.define_table(tablename,
Field('foo', label=T(dblabels_en["%s_foo" % tablename])))
?
On Thursday, October 18, 2012 9:57:09 PM UTC+2, Richard wrote:
>
> Hello,
>
> Is it possible to do that?
> db.define_table(...
> Field(...
> label=T(dblabels_en[db.table._tablename+db.table.field.name])
>
> I can do
> db.define_table(...)
> db.table.field.lable=T(dblabels_en[db.table._tablename+db.table.field.name
> ])
>
> Inside table model definition "table" is not yet define then I can refer
> to it.
>
> I try with lambda with no succes.
>
> Do you see a way to refer to the db.table._tablename in order to make it
> execute only once that the model is defined?
>
> Thanks
>
> Richard
>
--