Yes, it's supposed to work. Both db.sometable.anyfield.table and 
db.sometable.anyfield._table refer to the db.sometable object; and 
db.sometable.anyfield.tablename and db.sometable.anytable._tablename refer 
to the name of the db.sometable object (i.e., the string "sometable"). The 
._table and ._tablename versions are documented at the end of this section: 
http://web2py.com/books/default/chapter/29/6#Record-representation, but not 
the .table and .tablename versions.

Also, both db.sometable._id and db.sometable.id refer to the id field of 
the table, even if the id field is named something other than "id" (._id is 
briefly mentioned 
here<http://web2py.com/books/default/chapter/29/6#Recursive-selects>, 
but I don't think .id is documented).

Anthony

On Tuesday, June 19, 2012 9:15:21 AM UTC-4, Cliff Kachinske wrote:
>
>
> It seems to work, because
>
> print db.sometable.id.table
>
> returns 'sometable'.
>
> But I can't find any documentation for it.  Is this how things are 
> supposed to work, or am I just seeing a side effect?
>
> Thanks
> Cliff Kachinske
>

Reply via email to