An issue has been submitted, and this should be corrected soon. Anthony On Friday, July 29, 2011 9:57:30 PM UTC-4, Anthony wrote:
> auth.user is Storage(table_user._filter_fields(user, id=True)). The > _filter_fields method of the auth_user table only selects actual table > fields, not virtual fields, so auth.user will not include any virtual > fields. Perhaps this should be changed. > > Anthony > > On Friday, July 29, 2011 9:05:39 PM UTC-4, Michael Toomim wrote: > >> I think I found a bug in virtualfields. I have the following >> controller: >> >> def posts(): >> user = session.auth.user >> n = user.name # returns None >> >> Where "person" is defined as a virtualfield on user: >> >> class Users(): >> def name(self): >> return self.users.first_name + ' ' + self.users.last_name >> db.users.virtualfields.append(Users()) >> >> The problem is that user.name returns None, because apparently the >> virtualfield isn't loaded into the session variable of user. >> >> I made this work with the following modification to the controller: >> >> def posts(): >> user = db.users[session.auth.user.id] >> n = user.name # returns the user name correctly! >> >> I just had to refetch the user from the database. > >