class User(Storage):
   
    def __init__(id):
	self.userrow=db.query('select * from users where id=  $self._id',vars=locals())[0]
            for k in self.userrow.keys():
                setattr(self,k,self.userrow[k])
                #self.k=self.userrow[k]

both setattra and self.k = self.userrow methods are not working after inheriting from storage

>>> j.
j.__class__         j.__gt__            j.__repr__          j.getliveuserrow    j.popitem
j.__cmp__           j.__hash__          j.__setattr__       j.getphotos         j.publishfeed
j.__contains__      j.__init__          j.__setitem__       j.getuserrow        j.save
j.__delattr__       j.__iter__          j.__str__           j.has_key           j.setdefault
j.__delitem__       j.__le__            j.__weakref__       j.items             j.setlastlogin
j.__dict__          j.__len__           j.clear             j.iteritems         j.setlastlogin300
j.__doc__           j.__lt__            j.copy              j.iterkeys          j.update
j.__eq__            j.__module__        j.fromkeys          j.itervalues        j.values
j.__ge__            j.__ne__            j.get               j.keys             
j.__getattr__       j.__new__           j.getfeeds          j.kissallfriends   
j.__getattribute__  j.__reduce__        j.getfriends        j.pokeallfriends   
j.__getitem__       j.__reduce_ex__     j.getlastloginstr   j.pop   


without Storage
class User:
all the column elements  are accessible as j.htmlcodes j.first_name and so on
j.
j.__class__                 j.hotmail                   j.number_userpics
j.__doc__                   j.htmlcodes                 j.number_uservideos
j.__init__                  j.id                        j.number_votes
j.__module__                j.interests                 j.pageviews
j.aim                       j.ip                        j.password
j.books                     j.kissallfriends            j.pokeallfriends
j.city                      j.last_login                j.profilepic
j.created                   j.last_name                 j.publishfeed
j.dob                       j.liketomeet                j.rating
j.email                     j.movies                    j.rawpassword
j.email_subscribe           j.music                     j.save
j.favoritestuff             j.myrand                    j.setlastlogin
j.first_name                j.number_activities         j.setlastlogin300
j.gender                    j.number_comments           j.site
j.getfeeds                  j.number_communities        j.skype
j.getfriends                j.number_friends            j.television
j.getlastloginstr           j.number_pages              j.userid
j.getliveuserrow            j.number_pictures           j.username
j.getphotos                 j.number_polls              j.userrow
j.getuserrow                j.number_posts              j.validuser
j.groups                    j.number_useraudios         j.vanity
j.hash                      j.number_usermessages       j.yahoo
j.heroes                    j.number_usermessages_sent  j.zip
Brent Pedersen wrote:
i think you have it all, just have User be inherit from Storage:

from web.utils import Storage
class User(Storage):
    def __init__(....)

-brent



On Wed, May 14, 2008 at 12:45 AM, Paul <[EMAIL PROTECTED]> wrote:
  
 im trying to create a class user
 so that

 i can do

 r=User(1)


 r._user.keys()
 ['rating', 'last_name', 'pageviews', 'ip', 'number_polls', 'site',
 'myrand', 'hotmail', 'number_activities', 'skype', 'id', 'city',
 'rawpassword', 'number_useraudios', 'zip', 'number_votes',
 'last_login', 'number_userpics', 'music', 'email', 'number_pages',
 'username', 'number_posts', 'hash', 'number_comments',
 'number_pictures', 'first_name', 'yahoo', 'groups', 'heroes',
 'favoritestuff', 'number_usermessages_sent', 'vanity', 'interests',
 'television', 'number_uservideos', 'created', 'dob', 'gender',
 'number_friends', 'liketomeet', 'htmlcodes', 'aim', 'movies',
 'password', 'books', 'profilepic', 'number_usermessages',
 'email_subscribe', 'number_communities']

 so i want this to become

 r.rating
 r.last_name
 r.pageviews and so on
 r.username
 r.photos()
 and so on

 but

 i want to set the keys of the user row as the keys of User self
 but i m not sure how to do it

        for i in self._user.keys():
            self[i]=self._user[i]

 gives an error
 Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "api.py", line 40, in __init__
    self[i]=self._user[i]
 AttributeError: instance has no attribute '__setitem__'

 You can do something like

  self.update(_user)

 doesnt work either
 Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "api.py", line 39, in __init__
    self.update(self._user)
 AttributeError: user instance has no attribute 'update'

 Any thoughts on how to set this?

 class User:
    """user object
    """

    def __init__(self, id):
        self._id = id
        self._user=db.query('select * from users where id=
 $id',vars=locals())
        if not self._user:
            self._validuser=False
            self._username=''
            self._firstname=''
            self._lastname=''
            self._dob=''
            self._gender=''
            self._sex=''
        else:
            self._user=self._user[0]
            self._validuser=True
        self._username=self._user.username
        self._firstname=self._user.first_name
        self._lastname=self._user.last_name
        self._dob=self._user.dob
        self._gender=self._user.gender
        self._sex=self._user.gender
        for i in self._user.keys():
            self[i]=self._user[i]
    def userrow(self):
        return db.query('select * from users where id=
 $self._id',vars=locals())[0]
    def photos(self):
        return db.query('select pic,id, username from userpics where
 user_id=$self._id',vars=locals())
 >

    


  

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "web.py" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/webpy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to